Object Oriented Design Patterns and Best Practices in .Net (OODP .Net) From Modulus Training

Sponsored links

This course consists of approximately 50% hands on lab work (Patterns) and group dynamics exercises (for OOAD). Throughout the course students will be led through a series of progressively advanced topics, where each topic consists of lecture and group discussion.

This class is “technology centric”, designed to train attendees in essential OO background coupling the most current, effective techniques with the most effective practices.

Delivery:
  • Classroom
Regions:
  • London
Category:

Further Details

Topics
Session: OO Pattern Background
Lesson: Object Oriented Concepts

• Modern OO Concepts: Abstraction
• Three Object Oriented Themes
• Why Build Models?
• Notation
• Classes & Objects
• Object Services
• Rendering Objects
• Responsibilities and Operations
• Messages and Public Interfaces
• Instantiation
• Fields vs. Associations
• Methods and Algorithms
• The Three Pieces of PIE
• Encapsulation
• What Gets Inherited?
• Inheritance of Methods and Overriding
• Using the Overridden Method's Implementation
• Inheriting Associations
• Evaluating Inheritance
• Multiple Inheritance
• Polymorphism: Performance and Maintenance
• Abstract Classes
• Abstract Classes in C++ and Java; in C» and Visual Basic.NET
• Abstract Methods in C++ and Java; in C» and VB.NET
• Concrete Classes
• Interfaces
• Interfaces in C++ and Java
• Interfaces in C» and VB.NET
• Functionality Options
• Design by Interface
• C» and VB.Net as OO languages
• Pattern Implementation

Lesson: UML and USDP

• What is UML?
• Domains
• The Process of OO Analysis and Design
• OOAD Process: Requirements Capture
• OOAD Activities: Requirements
• Analysis
• Domain Design
• Object Discovery
• OOAD Process: Detailed Design
• Object Relationships & Interactions
• Object State & Object Activities
• OOAD Process: Architectural Design
• Packaging of Objects
• Components and Deployment
• Understanding our Understanding
• The Unified Software Development Process
• Granularity
• Levels of Detail
• Syntax and Semantics of UML
• CASE Tools
• CASE Tools for Visual Studio .NET
Lesson: Introduction to Design Patterns
• History and Overview of Patterns
• Problems in Development
• Patterns: Basics
• Patterns: Software Community
• Java Patterns Applicable in .NET
• .NET Specific Patterns
• Multi tier Patterns
• Architectural Patterns
• Framework and Component Patterns
• GoF Patterns
• Pattern Elements
• Problem & Solution
• Crucial Qualities
• What is Not a Pattern?
• Relating to Methodologies
• Patterns: Aligned with Development Process
• Design Patterns
• Classification Criteria
• Creational; Structural; Behavioral
• Scope Criteria
• Full Description Format
• Design Principles
• The Selection Process
Session: Creational Design Patterns
Lesson: Abstract Factory Design Pattern
• Introduction
• Illustrative Example
• Context
• Problem
• Solution Description


Objectives
Working in a hands on environment,developers will explore key Creational, Structural and Behavior Design patterns and how they used most effectively in building robust, reusable applications. This course combines the use of hands on coding labs with several “mini projects” to be completed throughout the training to get the students using and reviewing the Patterns in a practical manner. The workshop also contains several “thinking and drawing” lab exercises as a component of the object oriented overview portion of the training course. This comprehensive training course will begin with a review of core concepts of Object Oriented analysis & design using UML (approximately one day). Throughout the remainder of the course we will explore the following patterns, varying the levels of coverage to drill down on the most commonly used Patterns, and to simply survey others. Students will compare and contrast the patterns and explore the advantages and disadvantages of using certain patterns for explicit development functions in the .Net environment.

The course provides a solid foundation in basic terminology and concepts, extended and built upon throughout the engagement. Processes and best practices are discussed and illustrated through both discussions and group activities.
Attending students will be led through a series of advanced topics comprised of integrated lectures, group discussions and comprehensive demonstrations.

Prerequisites
This an basic level OO training course, designed for developers who need to identify, design, and lead the implementation of OO projects. We will explore and apply the terminology, the specification, the processes and technologies specific to OO. Attendees should be familiar with UML and have basic experience in C#. This course is not recommended for developers new to C# programming.


This Training Course is taught in classrooms in the following locations:
London E

Guide Price: £1250 + VAT