educative.io

Software Design Patterns: Best Practices for Software Developers (C. H. Afzal)


Structural Patterns - Decorator Pattern This lesson discusses how objects can be enhanced with new behavior using the decorator pattern. View the lesson [here](https://www.educative.io/collection/page/5307417243942912/5631943370604544/5732694713434112). Structural Patterns - Facade Pattern This lesson discusses how the interface to a complex system of interacting entities can be simplified by providing a front that hides the subsystem intricacies from the client. View the lesson [here](https://www.educative.io/collection/page/5307417243942912/5631943370604544/5692201761767424). Behavioral Patterns - Command Pattern This lesson discusses how actions and requests can be encapsulated as objects to act as callbacks and in the process allow logging, queueing and undo of commands. View the lesson [here](https://www.educative.io/collection/page/5307417243942912/5631943370604544/5669283816275968). Behavioral Patterns - Mediator Pattern This lesson discusses how the mediator pattern centralizes interaction amongst a number of interacting objects reducing coupling and dependence among them. View the lesson [here](https://www.educative.io/collection/page/5307417243942912/5631943370604544/5721036024709120). Behavioral Patterns - Visitor Pattern This lesson discusses the visitor pattern which adds new behavior to composites without modifying the composite's or it's underlying elements' classes. View the lesson [here](https://www.educative.io/collection/page/5307417243942912/5631943370604544/5678807906254848). The End - Epilogue Closing remarks View the lesson [here](https://www.educative.io/collection/page/5307417243942912/5631943370604544/5701867585667072). Behavioral Patterns - State Pattern This lesson discusses how an object exhibits very different behavior and appears to be an instance of a different class when its internal state changes under the state pattern. View the lesson [here](https://www.educative.io/collection/page/5307417243942912/5631943370604544/5753952654065664). Start - Introduction This lesson lays down the groundwork for understanding design patterns View the lesson [here](https://www.educative.io/collection/page/5307417243942912/5631943370604544/5704837555552256). Structural Patterns - Composite Pattern This lesson discusses the composite pattern that lets us treat individual elements and group of elements as one. View the lesson [here](https://www.educative.io/collection/page/5307417243942912/5631943370604544/5659645909663744). Structural Patterns - Proxy Pattern This lesson discusses how objects can act on behalf of other objects without the clients knowing they aren't talking to the intended object. View the lesson [here](https://www.educative.io/collection/page/5307417243942912/5631943370604544/5636470266134528). Creational Patterns - Factory Method Pattern This lesson discusses how derived classes can be given the responsibility of creating appropriate objects. View the lesson [here](https://www.educative.io/collection/page/5307417243942912/5631943370604544/5641332169113600). Creational Patterns - Builder Pattern This lesson discusses how complex objects can be represented and constructed without coupling the two operations. View the lesson [here](https://www.educative.io/collection/page/5307417243942912/5631943370604544/5723151296102400). Creational Patterns - Singleton Pattern This lesson discusses how the Singleton pattern enforces only a single instance of a class to ever get produced and exist throughout an application's lifetime. View the lesson [here](https://www.educative.io/collection/page/5307417243942912/5631943370604544/5684049913839616). The End - Summary Have questions about Summary? Go for it! View the lesson [here](https://www.educative.io/collection/page/5307417243942912/5631943370604544/5443995729657856). Creational Patterns - Prototype Pattern This lesson discusses how new objects can be created from existing objects using the prototype pattern. View the lesson [here](https://www.educative.io/collection/page/5307417243942912/5631943370604544/5759778777202688). Creational Patterns - Abstract Factory Pattern This lesson details the working of yet another creational design pattern, that allows us to create a family of products in a flexible and extensible manner. View the lesson [here](https://www.educative.io/collection/page/5307417243942912/5631943370604544/5713144022302720). Structural Patterns - Bridge Pattern This lesson discusses how parallel class hierarchies or layers can be decoupled from one another using the bridge pattern. View the lesson [here](https://www.educative.io/collection/page/5307417243942912/5631943370604544/5752142325350400). Behavioral Patterns - Chain of Responsibility Pattern This lesson discusses how a request can travel down a chain of handlers till an appropriate handler is found. View the lesson [here](https://www.educative.io/collection/page/5307417243942912/5631943370604544/5703128158568448). Behavioral Patterns - Observer Pattern This lesson discusses how updates from an object of interest can be communicated efficiently to interested parties using the observer pattern. View the lesson [here](https://www.educative.io/collection/page/5307417243942912/5631943370604544/5688737870643200). Start - Types of Design Patterns This lesson lists the most used and familiar design patterns View the lesson [here](https://www.educative.io/collection/page/5307417243942912/5631943370604544/5651442522128384). Behavioral Patterns - Strategy Pattern This lesson discusses how a set of policies, algorithms or strategies can be made interchangeable without affecting the clients using them. View the lesson [here](https://www.educative.io/collection/page/5307417243942912/5631943370604544/5645478960037888). Structural Patterns - Adapter Pattern Adapter pattern is similar to how an electrical adapter lets your laptop work both in the US or UK even though voltages are different. View the lesson [here](https://www.educative.io/collection/page/5307417243942912/5631943370604544/5674248798470144). Structural Patterns - Flyweight This lesson discusses how the flyweight pattern can be applied to reduce memory requirements. View the lesson [here](https://www.educative.io/collection/page/5307417243942912/5631943370604544/5768755258851328). Behavioral Patterns - Interpreter Pattern This lesson delves into the interpreter pattern, which allows us to simplify representation and implementation of a new programming language albeit with limited syntax. View the lesson [here](https://www.educative.io/collection/page/5307417243942912/5631943370604544/5735735550279680). Behavioral Patterns - Iterator Pattern This lesson discusses how the underlying elements that make up an aggregate object can be looped through without exposing implementation details to clients. View the lesson [here](https://www.educative.io/collection/page/5307417243942912/5631943370604544/5655608640405504). Behavioral Patterns - Memento Pattern This lesson discusses how the state of an object can be exported as a snapshot without exposing the internals of the object. View the lesson [here](https://www.educative.io/collection/page/5307417243942912/5631943370604544/5158086071287808). Behavioral Patterns - Template Method This lesson discusses how algorithms with multiple steps can be made configurable by allowing subclasses to provide behavior for some of the steps. View the lesson [here](https://www.educative.io/collection/page/5307417243942912/5631943370604544/5711312218750976).
About the Software Design Patterns: Best Practices for Software Developers (C. H. Afzal) category [Software Design Patterns: Best Practices for Software Developers (C. H. Afzal)] (1)
AircraftBuilder [Software Design Patterns: Best Practices for Software Developers (C. H. Afzal)] (4)