Difference between revisions of "DesignPatterns"
From Lost In Wonderlands
(→References) |
(→Design Patterns Catalog) |
||
Line 38: | Line 38: | ||
== Design Patterns Catalog == | == Design Patterns Catalog == | ||
− | === Creational Patterns === | + | === Gang Of Four Pattern === |
+ | |||
+ | * https://en.wikipedia.org/wiki/Design_Patterns | ||
+ | |||
+ | ==== Creational Patterns ==== | ||
* Abtract Factory Pattern, https://en.wikipedia.org/wiki/Abstract_factory_pattern | * Abtract Factory Pattern, https://en.wikipedia.org/wiki/Abstract_factory_pattern | ||
* Builder Pattern, https://en.wikipedia.org/wiki/Builder_pattern | * Builder Pattern, https://en.wikipedia.org/wiki/Builder_pattern | ||
Line 46: | Line 50: | ||
− | === | + | ==== Structural Patterns ==== |
− | * | + | * Adapter Pattern, https://en.wikipedia.org/wiki/Adapter_pattern |
− | * | + | * Bridge Pattern, https://en.wikipedia.org/wiki/Bridge_pattern |
− | * | + | * Composite Pattern, https://en.wikipedia.org/wiki/Composite_pattern |
− | * | + | * Decorator Pattern, https://en.wikipedia.org/wiki/Decorator_pattern |
− | * | + | * Facade Pattern, https://en.wikipedia.org/wiki/Facade_pattern |
− | * | + | * Flyweight Pattern, https://en.wikipedia.org/wiki/Flyweight_pattern |
− | * | + | * Proxy Pattern,https://en.wikipedia.org/wiki/Proxy_pattern |
− | * | + | * Wrapper Pattern |
+ | |||
+ | ==== Behavioral Patterns ==== | ||
+ | * Chain Of Responsibility Pattern, https://en.wikipedia.org/wiki/Chain-of-responsibility_pattern | ||
+ | * Chaining Pattern, https://en.wikipedia.org/wiki/Command_pattern | ||
+ | * Command Pattern,https://en.wikipedia.org/wiki/Command_pattern | ||
+ | * Interpreter Pattern, https://en.wikipedia.org/wiki/Interpreter_pattern | ||
+ | * Iterator Pattern, https://en.wikipedia.org/wiki/Iterator_pattern | ||
+ | * Mediator Pattern, https://en.wikipedia.org/wiki/Mediator_pattern | ||
+ | * Memento Pattern, https://en.wikipedia.org/wiki/Memento_pattern | ||
+ | * Observer Pattern, https://en.wikipedia.org/wiki/Observer_pattern | ||
+ | * State Pattern, https://en.wikipedia.org/wiki/State_pattern | ||
+ | * Strategy Pattern, https://en.wikipedia.org/wiki/Strategy_pattern | ||
+ | * Template Method Pattern, https://en.wikipedia.org/wiki/Template_method_pattern | ||
+ | * Visitor Pattern, https://en.wikipedia.org/wiki/Visitor_pattern | ||
+ | |||
+ | |||
+ | |||
+ | === Concurrency Patterns === | ||
+ | |||
+ | * https://en.wikipedia.org/wiki/Concurrency_pattern | ||
− | + | * Active Object | |
− | * | + | * Balking pattern |
− | * | + | * Barrier |
− | * | + | * Disruptor |
− | * | + | * Double-checked locking |
− | * | + | * Guarded suspension |
− | * | + | * Leaders/followers pattern |
− | * | + | * Monitor Object |
− | * | + | * Reactor pattern |
− | * | + | * Read write lock pattern |
− | * | + | * Scheduler pattern |
− | * | + | * Thread pool pattern |
− | * | + | * Thread-local storage |
=== Pattern-Oriented Software Architectures === | === Pattern-Oriented Software Architectures === | ||
− | * | + | * Layers Pattern |
− | * | + | * Pipes And Filters Pattern |
− | * | + | * Blackboard Pattern |
− | * | + | * Broker Pattern |
− | * | + | * Model-View-Controller Pattern |
− | * | + | * Presentation-Abstraction-Control Pattern |
− | * | + | * Microkernel Pattern |
− | * | + | * Reflection Pattern |
− | * | + | * Whole-Part Pattern |
− | * | + | * Master-Slave Pattern |
− | * | + | * Proxy Pattern |
− | * | + | * Command Processor Pattern |
− | * | + | * View Handler Pattern |
− | * | + | * Forwarder-Receiver Pattern |
− | * | + | * Client-Dispatcher-Server Pattern |
− | * | + | * Publisher-Subscriber Pattern |
== References == | == References == |
Revision as of 21:53, 12 March 2016
Contents
Design Patterns
by paul.plaquette, Senior Software Engineer, Trilda Open Source
NeXT Steps
here everything has yet to be done !
collecting more design pattern in the catalog
creating the template page for a design pattern
creating a card for each
coming soon :
Everything You Always Wanted to Know About Design Patterns... (But Were Afraid to Ask)
See also
- DesignPatterns
- AntiPatterns
- Refactoring
- CleanCode
- SecureCode
- UML
- SOLID
- Packages Principle
- KISS
- DRY
- GRASP
- YAGNI
Design Patterns Catalog
Gang Of Four Pattern
Creational Patterns
- Abtract Factory Pattern, https://en.wikipedia.org/wiki/Abstract_factory_pattern
- Builder Pattern, https://en.wikipedia.org/wiki/Builder_pattern
- Factory Method Pattern , https://en.wikipedia.org/wiki/Factory_method_pattern
- Prototype Pattern, https://en.wikipedia.org/wiki/Prototype_pattern
- Singleton Pattern, https://en.wikipedia.org/wiki/Singleton_pattern
Structural Patterns
- Adapter Pattern, https://en.wikipedia.org/wiki/Adapter_pattern
- Bridge Pattern, https://en.wikipedia.org/wiki/Bridge_pattern
- Composite Pattern, https://en.wikipedia.org/wiki/Composite_pattern
- Decorator Pattern, https://en.wikipedia.org/wiki/Decorator_pattern
- Facade Pattern, https://en.wikipedia.org/wiki/Facade_pattern
- Flyweight Pattern, https://en.wikipedia.org/wiki/Flyweight_pattern
- Proxy Pattern,https://en.wikipedia.org/wiki/Proxy_pattern
- Wrapper Pattern
Behavioral Patterns
- Chain Of Responsibility Pattern, https://en.wikipedia.org/wiki/Chain-of-responsibility_pattern
- Chaining Pattern, https://en.wikipedia.org/wiki/Command_pattern
- Command Pattern,https://en.wikipedia.org/wiki/Command_pattern
- Interpreter Pattern, https://en.wikipedia.org/wiki/Interpreter_pattern
- Iterator Pattern, https://en.wikipedia.org/wiki/Iterator_pattern
- Mediator Pattern, https://en.wikipedia.org/wiki/Mediator_pattern
- Memento Pattern, https://en.wikipedia.org/wiki/Memento_pattern
- Observer Pattern, https://en.wikipedia.org/wiki/Observer_pattern
- State Pattern, https://en.wikipedia.org/wiki/State_pattern
- Strategy Pattern, https://en.wikipedia.org/wiki/Strategy_pattern
- Template Method Pattern, https://en.wikipedia.org/wiki/Template_method_pattern
- Visitor Pattern, https://en.wikipedia.org/wiki/Visitor_pattern
Concurrency Patterns
- Active Object
- Balking pattern
- Barrier
- Disruptor
- Double-checked locking
- Guarded suspension
- Leaders/followers pattern
- Monitor Object
- Reactor pattern
- Read write lock pattern
- Scheduler pattern
- Thread pool pattern
- Thread-local storage
Pattern-Oriented Software Architectures
- Layers Pattern
- Pipes And Filters Pattern
- Blackboard Pattern
- Broker Pattern
- Model-View-Controller Pattern
- Presentation-Abstraction-Control Pattern
- Microkernel Pattern
- Reflection Pattern
- Whole-Part Pattern
- Master-Slave Pattern
- Proxy Pattern
- Command Processor Pattern
- View Handler Pattern
- Forwarder-Receiver Pattern
- Client-Dispatcher-Server Pattern
- Publisher-Subscriber Pattern
References
- https://en.wikipedia.org/wiki/Architectural_pattern
- http://sourcemaking.com/
- http://shichuan.github.com/javascript-patterns/
- https://en.wikipedia.org/wiki/Design_Patterns
- https://en.wikipedia.org/wiki/Software_design_pattern
- http://www.javaworld.com/article/2078675/core-java/design-patterns--the-big-picture--part-2--gang-of-four-classics-revisited.html
- http://www.javabrahman.com/design-patterns/gof-gang-four-design-patterns/
- http://codingplayground.blogspot.it/2009/01/design-pattern
- http://www.tutorialspoint.com/design_pattern/design_pattern_tutorial.pdf
- https://csharpdesignpatterns.codeplex.com/
- http://www.codeproject.com/KB/architecture/#Design+Patterns
- https://msdn.microsoft.com/en-us/library/bb190165.aspx
- https://delphipatterns.codeplex.com/
- Design Patterns: Elements of Reusable Object-Oriented Software by Erich Gamma, Richard Helm, Ralph Johnson and John Vlissides (Nov 10, 1994)
- Design Pattern Explained, A New Persective on Object-Oriented Design, Alan Shalloway, James Trott, Addison-Wesley, 1st Edition(July 9, 2001), 2nd Edition (October 22, 2004)
- Professional (July 9, 2001), and second edition
- Pattern-Oriented Software Architecture, Wiley, Vol 1 - 5
- Real-Time Design Patterns: Robust Scalable Architecture for Real-Time Systems, Bruce Powel Douglass, Addison Wesley (September 27,2002)
- Antipatterns, Identification, Refactoring, and Management, Philip A. Laplante, Clin J.Neill, Auerbach Publications (2006)
- Refactoring: Improving the Design of Existing Code, Martin Fowler, Kent Beck, John Brant, William Opdyke, don Roberts, Addison-Wesley Professional, 1 edition (July 8, 1999)