- I did not like the GoF implementation to start with. It is old-fashion, very ".NET 1.0" in code design, and super-complicated in some cases.
- In more then one case the code do not give the actual essence of the relevant pattern (see Command pattern), what can lead to misunderstandings. Just to give you a general idea, look at http://sourcemaking.com/design-patterns-and-tips and see how deferent approach to design pattern introduction make them clearer to understand.
- The 23 patterns that GoF introduce might still be valid today, but are a bit academic as far as implementing them. A lot of them are part of the programming language, like: iterator (foreach), visitor (extension methods), observer (delegate), strategy (well… delegate) and template-method (simply abstract-class). Others are implemented in few lines of code (singleton), or available for usage in some domains (i.e. StreamReader implements decorator for Stream, and interop is an adaptor for COM objects). See this article for more details. There are also some patterns that are better implemented by means other then POCO, like decorator and proxy that are better implemented using AOP.
- The GoF patterns are just the basic object-oriented patterns. A lot of application-architecture patterns are not covered by GoF. Some of them are at the enterprise level (like MVC), but some are just modern OO approach (like IoC and ORM). Frameworks other then the doFactory answer these patterns better.
In any case, I did not see how exactly the doFactory looks like, but as far as I understand it is not very promising. If any of you have a copy of the doFactory for me to look at, I would not refuse.
No comments:
Post a Comment