2013-05-07 58 views
4

當我實現設計模式時,是否應該保留「策略」,「訪問者」,「外觀」等術語,還是可以將這些名稱與我的應用程序的上下文匹配?最佳做法是什麼?我應該保留設計模式術語嗎?

+0

您可以在這裏查看http://stackoverflow.com/questions/222369/what-naming-convention-do-you-use-for-the-decorator-pattern – 2013-05-07 14:17:55

+3

我認爲這是一個提及AbstractSingeltonProxyFactoryBean的機會! http://static.springsource.org/spring/docs/2.5.x/api/org/springframework/aop/framework/AbstractSingletonProxyFactoryBean.html – blank 2013-05-07 14:29:41

回答

3

我認爲你應該總是保留一些對你的命名模式的引用,使它有意義和描述性。

模式是一種溝通方式。如果我遇到XyzVisitor的代碼,我知道訪問者模式已被使用。除此之外,該名稱已經傳達了關於代碼如何工作(或應該工作)的一整套信息。

這就是說,有時它會有點奇怪。例如。 DatabaseSingleton。而AccountRefreshCommand非常適合。

+0

+1「模式是一種溝通方式」 – MattDavey 2013-05-08 12:38:24

5

您應該將這些名稱放入應用程序的上下文中。它將使人們更容易閱讀你的代碼。您可以在文檔中添加這些模式。

+0

文檔?那是什麼? – 2013-05-08 07:55:29

1

取決於您使用的是哪種模式,某些模式名稱可能與類名稱混合在一起,例如,我用

class LogFactory 
class StudentsAdapter 

工廠及適配器模式,但

Engine.Instance 

爲單身。

1

取決於您是否樂於在使用不同模式時重命名課程,對我而言,它會帶來太多的匈牙利語符號困難。