Design Pattern & Framework

This morning, a email from TSS attract my attention to the TSS website. I found many papers and discussions refering to Design Pattern and Framework.   

A simple answer came from Venkatesan K:
" A design pattern suggests a solution for a recurring design problem in an application and the solution is generally open for future extensions. "
" A framework is a suite of packages which applications using , with all the functional and non-functional  requirements, can be develped and hosted"

Another detail replay posted by Alexandre Poitras:
"A pattern is just a way of sharing knowledge, experience. It isn't a solution in itself. A pattern can have many different implementations refered as strategies and be implemented in many different programming languages.  Patterns are popular because they are a very good way to use a common language, to document a system and to reuse some parts of a system design. Contrary to popular belief, it's very hard to reuse existing domain objects but patterns are very easy to reuse accross different projects"
"On the other hand , a frame work is a finite solution that help you structure your code and solve a particular kind of problem. A framework is usually made of serveral patterns implementations. A framework is based upon the IoC ( Inversion of Control) principle; your application just need to provide and declare some callback functions and start the framework. From there the framework is in charge of running the application, calling your callback functions whenever it's necessary. So as you can see ,they are very different concepts, the main difference being that a framework is a physical and usable piece of code while a pattern is a logical design solution to a given kind of problem."

Reading many other posts from everywhere in the world, I find some people cosidered the diference between Design pattern and Framework without in a context. Personally, A framework is just a concrete  implementation  of one design pattern or serveral in a context.  Please pay attention to the definition, the proposed solution can have different implementation alternatives, not only depending on the programming language or specific paltform, but also the problem context.  If you misunderstand the context and the specific problems that the design pattern solves, then you can select and apply the wrong pattern and more problem can appear in your projects.

Design pattern http://www.theserverside.com/patterns/thread.tss?thread_id=38839
Framework http://www.theserverside.com/news/thread.tss?thread_id=39529#204335
Design pattern and framework http://www.theserverside.com/patterns/thread.tss?thread_id=41101

你可能感兴趣的:(design pattern)