Design Patterns in Java – Udemy Description
Design Patterns in Java – Udemy teaches you how to recognize and apply design patterns, how to refactor existing designs to use design patterns, and the reason about applicability and usability of design patterns.
Here’s what you will learn in this course:
- Introduction
- Introduction
- SOLID Design Principles
- Overview
- Single Responsibility Principle (SRP)
- Open-Closed Principle (OCP)
- Liskov Substitution Principle (LSP)
- Interface Segregation Principle (ISP)
- Dependency Inversion Principle (DIP)
- Summary
- Builder
- Gamma Categorization
- Overview
- Builders in Java
- Builder
- Fluent Builder
- Fluent Builder Inheritance with Recursive Generics
- Faceted Builder
- Builder Coding Exercise
- Summary
- Factories
- Overview
- Factory Method
- Factory
- Abstract Factory
- Factory Coding Exercise
- Summary
- Prototype
- Overview
- Don’t Use Cloneable
- Copy Constructors
- Copy Through Serialization
- Prototype Coding Exercise
- Summary
- Singleton
- Overview
- Basic Singleton
- Serialization Problems
- Static Block Singleton
- Laziness and Thread Safety
- Inner Static Singleton
- Enum Based Singleton
- Monostate
- Multiton
- Testability Issues
- Singleton in Dependency Injection
- Singleton Coding Exercise
- Summary
- Adapter
- Overview
- Vector/Raster Demo
- Adapter Caching
- Adapter Coding Exercise
- Summary
- Bridge
- Overview
- Bridge
- Bridge Coding Exercise
- Summary
- Composite
- Overview
- Geometric Shapes
- Neural Networks
- Composite Coding Exercise
- Summary
- Decorator
- Overview
- String Decorator
- Dynamic Decorator Composition
- Static Decorator Composition
- Adapter-Decorator
- Decorator Coding Exercise
- Summary
- Facade
- Overview
- Façade
- Summary
- Flyweight
- Overview
- Repeating Usernames
- Text Formatting
- Flyweight Coding Exercise
- Summary
- Proxy
- Overview
- Protection Proxy
- Property Proxy
- Dynamic Proxy for Logging
- Proxy vs. Decorator
- Proxy Coding Exercise
- Summary
- Chain of Responsibility
- Overview
- Method Chain
- Command Query Separation
- Broker Chain
- Chain of Responsibility Coding Exercise
- Summary
- Command
- Overview
- Command
- Undo Operations
- Command Coding Exercise
- Summary
- Interpreter
- Overview
- Handmade Interpreter: Lexing
- Handmade Interpreter: Parsing
- ANTLR
- Interpreter Coding Exercise
- Summary
- Iterator
- Overview
- Tree Traversal
- Array-Backed Properties
- Iterator Coding Exercise
- Summary
- Mediator
- Overview
- Chat Room
- Reactive Extensions Event Broker
- Mediator Coding Exercise
- Summary
- Memento
- Overview
- Memento
- Memento for Interop
- Memento Coding Exercise
- Summary
- Null Object
- Overview
- Null Object
- Dynamic Null Object
- Null Object Coding Exercise
- Summary
- Observer
- Overview
- Observer and Observable
- An Event Class
- The Problem with Dependent Properties
- Observable Coding Exercise
- Summary
- State
- Overview
- Classic Implementation
- Handmade State Machine
- Spring Statemachine
- State Coding Exercise
- Summary
- Strategy
- Overview
- Dynamic Strategy
- Static Strategy
- Strategy Coding Exercise
- Summary
- Template Method
- Overview
- Template Method
- Template Method Coding Exercise
- Summary
- Visitor
- Overview
- Intrusive Visitor
- Reflective Visitor
- Classic Visitor (Double Dispatch)
- Acyclic Visitor
- Visitor Coding Exercise
- Summary
- Course Summary
- End of Course
- Bonus Lecture: Other Courses at a Discount