Design Patterns in .NET Training

  • Learn via: Online Instructor-Led / Classroom Based / Onsite
  • Duration: 3 Days
  • Price: Please contact for booking options
  • Upcoming Date:
  • UK Based Global Training Provider

This course is designed for C# developers who want to extend their architectural skills using design patterns and related techniques. The delivery is tailored to the .NET platform and uses .NET libraries and frameworks wherever possible to illustrate how patterns can be usefully applied. Additional examples are drawn from Ruby, Java/JEE, C++ and Scala.

Each pattern is introduced in terms of its abstract structure (via UML diagrams), its benefits and drawbacks, sample implementations and practical examples of how it can be used to simplify software development.

 

We can organize this training at your preferred date and location. Contact Us!

Prerequisites

Delegates should have at least 3 years experience in C# development and be familiar with UML Sequence and Class diagrams.

Training Outline

Introduction to Patterns

  • What is a design pattern?
  • The evolution of design patterns
  • Misconceptions about design patterns
  • The dangers of becoming ‘pattern happy’
  • Distinguishing between patterns, idioms and refactorings
  • Using refactorings to introduce patterns incrementally
  • Using patterns to create an object oriented architecture

MVC, MVP and MVVM

  • Why MVC is the most important pattern in enterprise architecture
  • How the pattern is applied in web frameworks like ASP .NET MVC
  • Guidelines for applying MVC successfully in your own designs
  • Why Microsoft evolved MVP and MVVM out of conventional MVC
  • How MVVM is used in WPF and Windows 10 user interfaces

The Little Language Pattern

  • Understanding Little Language and Domain Specific Languages
  • Support for DSL’s in .NET via CodeDom and T4 Templates
  • LINQ as an example of an Internal DSL

The Observer Pattern

  • The disconnect between OO design and event handling
  • How the Observer pattern enables event-driven OO code
  • The classical implementation of Observer using interfaces
  • The .NET (and Delphi) version of Observer using delegates

The Iterator Pattern

  • Accessing an aggregate object without knowing its representation
  • How Iterator is used in the C++ , Java and .NET collection libraries
  • Adding iterator support to your own C# collection classes

The Singleton Pattern

  • Why ensure a class only has a single instance?
  • Singleton objects verses static utility classes
  • The classical implementation of the Singleton pattern
  • Language specific solutions to Singleton in C# and Scala
  • Making Singletons safe and efficient in concurrent code
  • Problems with the double checked locking idiom

Patterns Relating to Factories

  • Advantages of separating clients from object creation
  • Comparing the Factory Method and Abstract Factory Patterns
  • Using Abstract Factory to conceal providers in ADO .NET
  • Extending the Factory Pattern into Dependency Injection
  • Examples of Dependency Injection Tools for .NET

The Strategy Pattern

  • Creating class hierarchies to represent algorithms
  • Separating a class from a changing or complex algorithm
  • How Strategy is used with Layout Managers in WPF
  • How Strategy is used within mocking tools like Moq

The Command Pattern

  • Similarities between Srategy and Command
  • Using Command objects to simplfy event dispatching
  • Incrementally refactoring code to introduce Command
  • Uses of the Command Pattern in Web Frameworks

The Proxy Pattern

  • Adding services by intercepting messages
  • Dynamically creating proxy classes via Reflection
  • How proxies can be used for Aspect Oriented Programming
  • The interception framework provided with .NET

The Template Method Pattern

  • Using polymorphism to customize algorithms
  • Similarities between Template and Factory Method

The Decorator and Adapter Patterns

  • Using composition to layer extra functionality
  • Applying Decorator to create specialized collections
  • Distinguishing between Adapter and Decorator
  • Uses of these patterns in the .NET I/O libraries

Visitor

  • Simplifying class design by modelling operations as visitors
  • Adding support for Visitor to existing collections of objects
  • Using Visitor to add reporting and logging behaviour
  • Code generation in C# with Visitor and the CodeDOM library
  • Using Visitor in the design of a C# mock objects generator

The State Pattern

  • Benefits of the State Pattern over subclassing
  • Modelling objects with complex internal state transitions
  • Different approaches to implementing state transitions
  • Automatically generating state machines

Parallel Programming Patterns

  • Introducing the .NET Parallel Patterns
  • Working with thread pools and IOU’s
  • The async/await keywords

Why Choose Us

Experience live, interactive learning from the comfort of your home or office with Bilginç IT Academy's Online Instructor-Led Design Patterns in .NET Training. Engage directly with expert trainers in a virtual environment that mirrors the energy and schedule of a physical classroom.

  • Live Sessions: Join scheduled classes with a live instructor and other delegates in real-time.
  • Interactive Experience: Engage in group activities, hands-on labs, and direct Q&A sessions with your trainer and peers.
  • Global Expert Trainers: Learn from a handpicked global pool of expert trainers with deep industry experience.
  • Proven Expertise: Benefit from over 30 years of quality training experience, equipping you with lasting skills for success.
  • Scalable Delivery: Accessible worldwide with flexible scheduling to meet your professional needs through our globally available virtual classrooms.

Immerse yourself in our most sought-after learning style for Design Patterns in .NET Training. Our hand-picked classroom venues offer an invaluable human touch, providing a focused and interactive environment for professional growth.

  • Highly Experienced Trainers: Boost your skills with trainers boasting 10-20+ years of real-world experience.
  • State-of-the-Art Venues: Learn in high-standard facilities designed to ensure a comfortable and distraction-free experience.
  • Small Class Sizes: Our limited class sizes foster meaningful discussions and a personalized learning journey.
  • Best Value: Achieve your certification with high-quality training and competitive pricing.

Streamline your organization's training requirements with Bilginç IT Academy’s Onsite Design Patterns in .NET Training. Experience expert-led learning at your own business premises, tailored to your corporate goals.

  • Tailored Learning Experience: Customize the training content to fit your unique business projects or specific technical needs.
  • Maximize Training Budget: Eliminate travel and accommodation costs, focusing your entire budget on the training itself.
  • Team Building Opportunity: Enhance team bonding and collaboration through shared learning experiences in your workspace.
  • Progress Monitoring: Track and evaluate your employees' progression and performance with relative ease and direct oversight.


Contact us for more detail about our trainings and for all other enquiries!

Design Patterns in .NET Training Course Schedule

Join our public courses in our Istanbul, London and Ankara facilities. Private class trainings will be organized at the location of your preference, according to your schedule.

We can organize this training at your preferred date and location.
22 April 2026 (3 Days)
Istanbul, Ankara, London
04 May 2026 (3 Days)
Istanbul, Ankara, London
20 May 2026 (3 Days)
Istanbul, Ankara, London
05 June 2026 (3 Days)
Istanbul, Ankara, London
06 June 2026 (3 Days)
Istanbul, Ankara, London
19 June 2026 (3 Days)
Istanbul, Ankara, London
21 June 2026 (3 Days)
Istanbul, Ankara, London
01 July 2026 (3 Days)
Istanbul, Ankara, London

Our IT training and professional development services reach a global audience, transcending geographical boundaries through advanced digital learning platforms and strategic international hubs. We specialize in delivering world-class curriculum across continents, ensuring that no matter where you are located, you have access to the latest industry certifications and technical expertise. By partnering with global technology leaders and academic institutions, we provide a unified learning experience that meets the demands of a diverse, international workforce. Our commitment to global excellence ensures that professionals in every time zone can master the digital skills required to lead, innovate, and thrive in the ever-evolving global technology landscape.

By using this website you agree to let us use cookies. For further information about our use of cookies, check out our Cookie Policy.