.NET Design Patterns and Principles Training in Hamilton, Canada

Enroll in or hire us to teach our .NET Design Patterns and Principles class in Hamilton, Canada by calling us @303.377.6176. Like all HSG classes, .NET Design Patterns and Principles may be offered either onsite or via instructor led virtual training. Consider looking at our public training schedule to see if it is scheduled: Public Training Classes
Provided there are enough attendees, .NET Design Patterns and Principles may be taught at one of our local training facilities.
We offer private customized training for groups of 3 or more attendees.

Course Description

 
This 3-day course that teaches students best practices for developing enterprise applications and a selection of popular design principles and patterns that can be applied to achieve a maintainable, flexible, and testable architecture.
Course Length: 3 Days
Course Tuition: $1750 (US)

Prerequisites

Prior experience developing applications in .NET is required.

Course Outline

 

Dealing with Complexity

  •  Functional Decomposition
  •  Requirements and Inevitable Change
  •  Coupling and Cohesion
  •  Unwanted Side Effects
  •  Perspecives
    •  Conceptual
    •  Specification
    •  Implementation
  •  Responsibilities

The Object-Oriented Paradigm

  •  Objects and Responsibilities
  •  Single Responsibility Principle (SRP)
  •  Interfaces and Abstract Classes
  •  Encapsulation and Polymorphism
  •  Liskov Substitution Principle (LSP)
    •  Object Construction and Destruction
    •  Constructors and Field Initialization in .NET
    •  Destructors and the Finalize Method
    •  .NET Dispose Pattern
  •  Classes vs. Structs in .NET

Overview of UML

  •  Introduction
  •  Class Diagrams
  •  Sequence Diagrams

Introduction to Design Patterns

  •  Origin of Design Patterns
  •  “Gang of Four” Patterns
  •  Key Features of Patterns
  •  Why Study Design Patterns?
  •  Design Strategies

Structural Patterns (Part I)

  •  Facade Pattern
  •  Adapter Pattern
  •  Facade vs. Adapter

Testability

  •  Writing Unit Tests
  •  Test-Driven Development (TDD)
  •  Dependencies
  •  Extracting Interfaces
  •  Mock Object Pattern

Behavioral Patterns (Part I)

  •  Dealing with Change
  •  Encapsulating Variations
  •  Strategy Pattern
  •  Open-Closed Principle (OCP)
  •  Template Method Pattern

Structural Patterns (Part II)

  •  Inheritance vs. Composition
  •  Bridge Pattern
  •  Decorator Pattern
  •  Proxy Pattern

Behavioral Patterns (Part II)

  •  Observer Pattern
  •  .NET Events
  •  Command Pattern

Creational Patterns

  •  Motivation
  •  Dependency Injection
  •  Singleton Pattern
    •  Thread Safety
    •  .NET Implementation
  •  Object Pool Pattern
  •  Factory Method Pattern
  •  Abstract Factory Pattern

Model-View-Controller (MVC)

  •  Model-View-Presenter (MVP)
  •  Model-View-ViewModel (MVVM)
  •  WPF and ASP.NET MVC

Architectural Patterns and Styles

  •  Component-Based Architecture
  •  .NET Assemblies and Versioning
  •  N-Tier Architecure
  •  Service-Oriented Architecture (SOA)

Designing with Patterns

  •  Summary of Design Principles
  •  Commonality and Variability
  •  Dependency Inversion Principle (DIP)
  •  Hybrid and Composite Patterns
  •  Design Patterns and Agile Practices

Course Directory [training on all levels]

Upcoming Classes
Gain insight and ideas from students with different perspectives and experiences.

Interesting Reads Take a class with us and receive a book of your choosing for 50% off MSRP.