learnstuff logo

Software Engineering

Design Patterns theory, implementation and use cases. Stating from Gang of Four (GOF) patterns, discover the wonderful world of design patterns. See how they are implemented in Java, their uses case and a brief pros and cons discussion on the applicability of patterns.
github icon
  • 1
    Singleton, Abstract Factory, Builder, Factory Method
    About: Learn how to implement and use: Singleton, Abstract Factory, Builder, Factory Method. The first series of design patterns takes into account some of the most common creational patterns out there. As the name suggest these patterns provide ways of creating objects in a specific, efficient way.
    Requirements: Java, Eclipse IDE
  • 2
    Prototype, Adapter, Bridge, Composite
    About: Learn how to implement and use: Prototype, Adapter, Bridge, Composite. In this course we begin shifting the focus from creational patterns to behavioural ones. Explore the ways classes we can reuse or extend existing classes.
    Requirements: Java, Eclipse IDE
  • 3
    Decorator, Façade, Flyweight, Front Controller
    About: Learn to implement and use: Decorator, Façade, Flyweight, Front Controller. In this course we discuss ways in which we hide the complexity of our code and logic from other classes or users of our API.
    Requirements: Java, Eclipse IDE
  • 4
    Observer, Strategy, Template Method, Visitor
    About: Learn to implement and use: Observer, Strategy, Template Method, Visitor. Some patterns serve utilitary purposes and allow us to have different approach to configurable algorithms. The observer pattern is highly used in many other Java and non-java frameworks and languages ensuring applications are able to response to user generated events.
    Requirements: Java, Eclipse IDE