Design Patterns

Course Description:

"You know you don’t want to reinvent the wheel (or worse, a flat tire), so you look to design patterns – the lessons learned by those who've faced the same software design problems. In this training you'll learn why and how you can exploit the wisdom and lessons learned by other developers who've been down the same design problem road and survived the trip. We will look at the use and benefits of design pattern, look at some key OO design principles and walk through the example of how one patterns works." ("Head First, Design Patterns").

Goals
Design patterns are recurring solutions to software design problems you find again and again in real-world application development. The specific details of a software problem may vary from project to project but patterns capture the essence and basic structure of successful experiences in solving similar problems. Design patterns thus offer a technique for capturing design and architecture, presenting and communicating architectural knowledge at all levels of a system, allowing experience and insights to be understood and distilled. With knowledge of design patterns, a designer, programmer or architect can leverage the collective knowledge and expertise of the software community.

You will walk away from this training with the knowledge and the skills necessary to implement and benefit from design patterns in your next project.


Trainer:

Avi Specializes in information systems technologies, products, development architectures and complex projects management. Has a vast experience as a programmer, systems analyst and project manager in a wide range of fields: WEB, client-server, PDA, Microsoft technologies, JEE technologies, MF systems modernization, and more. Avi holds a B.Sc. in computer science & management and an M.B.A. in business administration.

Course Content:

Module 1: Exploring Object-Oriented Design Principles and Design Patterns
  • Describe the fundamental object-oriented design principles and concepts.
  • Describe the characteristics of design patterns.
  • Coding with best practices. Simplifying software with design patterns.
Module 2: Using Gang of Four (GOF) Behavioral Patterns
  • Describe the basic characteristics of the Behavioral patterns .
  • Apply the Command pattern.
  • Apply the Observer pattern.
  • Apply the State pattern.
Module 3: - Using Gang of Four (GOF) Creational Patterns
  • Describe the basic characteristics of the Creational patterns.
  • Apply the Factory Method pattern.
  • Apply the Abstract Factory pattern.
  • Apply the Singleton pattern .
Module 4: - Using Gang of Four (GOF) Structural Patterns
  • Describe the basic characteristics of the Structural patterns.
  • Apply the Facade pattern.
  • Apply the Proxy pattern.
  • Apply the Adapter pattern.
  • Decorator.
Module 5: - Using Architectural Building Blocks
  • Compare architectural patterns to design patterns.
  • Apply the Model View Controller (MVC) pattern.
  • Explain tiers and layers in .NET platform applications.
Module 6: - Exploring AntiPatterns
  • Define AntiPatterns.
  • AntiPatterns Samples.

Related Courses: