Google plus
  • English
  • العربية

Software Design Patterns

This course extends object-oriented analysis and design by incorporating design patterns to create interactive applications. Through a survey of established design patterns, you will gain a foundation for more complex software applications. Finally, you will identify problematic software designs by referencing a catalog of code smells




  • Training Type
  • Training

  • Topics
  • • Introduction to Design Patterns: Creational & Structural Patterns
    o What is a Design Pattern?
    o Creational, Structural, and Behavioural Patterns
    o Singleton Pattern
    o Factory Method Pattern
    o Facade Pattern
    o Adapter Pattern
    o Composite Pattern
    o Proxy Pattern
    o Decorator Pattern
    • Behavioural Design Patterns
    o Template Method Pattern
    o Chain of Responsibility Pattern
    o State Pattern
    o Command Pattern
    o Observer Pattern
    • Working with Design Patterns & Anti-patterns
    o MVC Pattern
    o Open/Closed Principle
    o Dependency Inversion Principle
    o Composing Objects Principle
    o Interface Segregation Principle
    o Principle of Least Knowledge
    o Part 1 - Code Smells
    o Part 2 - Code Smells
    • Capstone Challenge
    o Capstone Assignment 2.3 - Identify and Fix Code Smells (Solution)
    o Discussion: Last Word – Design Patterns
    o Acknowledgements
    o Credits

  • Pre-requisites
  • Attendees should have:
    • An Understanding of object-oriented programming techniques
    • Experience with an object-oriented programming language such as Java or C#
    • Some exposure to UML diagramming models.

  • Audience
  • Software Engineers – Software Developers.

  • Related Courses
  • Value of Training
  • After completing this course, you will be able to:
    • Demonstrate how to use design patterns to address user interface design issues.
    • Identify the most suitable design pattern to address a given application design problem.
    • Apply design principles (e.g., open-closed, dependency inversion, least knowledge).
    • Critique code by identifying and refactoring anti-patterns.
    • Apply the model-view-controller architectural pattern.

  • Training Hours
  • 16 Hours

scheduled date Location time No of days price  
April 29, 2018 Cairo 16 Hour Apply To The Course