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: |
|
| Regions: |
|
| Category: |
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.
