Course code Title Language Price # Unit Startdate Hour Enddate Location Signup
JVN014 Exploring Design Patterns English €770.00 2 Day(s) 18-12-2017 09u00 19-12-2017 Kontich Subscribe
JVN014 Exploring Design Patterns Dutch €770.00 2 Day(s) 26-02-2018 09u00 27-02-2018 Kontich Subscribe
JVN014 Exploring Design Patterns on your request on your request Contact Us

Exploring Design Patterns

Exploring Design Patterns

Overview

Course code: 
JVN014
Duration: 
2
Time Unit: 
Day(s)
Overview: 

This course explores proven real-world techniques to meet the biggest challenge in the software development community - building quality systems which fulfill your requirements, and delivering them on time. The focus of the course is to give you the practical skills that are most critical in building well designed software systems. It is extremely hands-on and applied, as well as giving you the formal knowledge you need to be fully conversant in this important area. This course explores the most common object-oriented design patterns (Gang of Four) and how to use these patterns to develop solid, robust, and reusable software development applications. The course covers the patterns in the three core areas of Creational, Structural, and Behavioral and is hands-on with design projects and programming labs.

Topics

Topics: 

Introduction

What’s our World?
OK – So Just What is a Design Pattern?
Design Patterns are not Esoteric
Why Use Patterns?
The Adapter Pattern
Reviewing Interfaces & Abstract Classes
Interface Types
Interface Definitions
Abstract Methods
Abstract Classes
Using Abstract Classes
Important Principal of OO Design

The Iterator Pattern

Patterns: Traversing a Collection
A Simple ArrayList
Using Our ArrayList
Using Our Simple Collection
Another Design for Collection Traversal
Using Our New Collection
Differences in Traversing Our Collection
Why is This Important?
Why is This a Design Pattern?
We Will Expand on Our Design

Design Patterns – Background

Design Patterns Arise From Architecture
Christopher Alexander
The TimelessWay
A Core Principle of His Books
Patterns in A Pattern Language
Sitting Circle (185)
Different Chairs (251)
Patterns Evolution in Software
OOPSLA 88
Patterns Evolution in Software
Patterns Today

UML Overview

Unified Modeling Language (UML)
Using UML
UML Diagrams
Class Diagram
Class Diagram Notation
Association Relationships in Detail
Class Diagram Notation
Abstract Class Notation
Interface Notation
Another Class Diagram

Gang of Four Design Patterns Description

What Do We Know Now About Patterns
GOF Pattern Description
Iterator: Overview
Iterator: Motivation
Iterator: Applicability
Iterator: Structure – Java
Iterator: Structure – General
Iterator: Participants
Iterator: Collaborations and Consequences
Iterator: Implementation
Implementation: Who Controls the Iteration
Implementation: Who Defines the Traversal
Implementation: Robustness
Iterator: Known Uses and Related Patterns
So – What is a Design Pattern?

The GOF Patterns Catalog

Organizing the Catalog
Creational, Structural, and Behavioral Purpose
Class and Object Scope
Design Pattern Space
The GOF Catalog of Design Patterns

Factory Method Pattern

Motivation – Forces and Solution
Motivation
Factor Method: Iterator Usage
Factory Method: General Structure
Participants
Collaborations and Applicability
Applicability
Consequences
Implementation
Known Uses and Related Patterns

Strategy Pattern

Motivation – Forces and Solution
Structure
Alternative to Strategy
How Do We Choose Among Alternative?
Participants
Collaborations and Applicability
Consequences
Implementation
Known Uses and Related Patterns
Difference From Factory Method

Decorator Pattern

Motivation – Forces and Solution
Structure
Participants an Collaborations
Structure
Writer and FilterWriter Classes
UpperCaseFilterWriter Class
Consequences
Implementation
Known Uses and Related patterns

Composite Pattern

Motivation – Forces
Motivation – Solution
Structure
Participants
Collaborations
Consequences
Implementation
Known Uses and Related Patterns

Template Method Pattern

Motivation – Forces and Solution
Structure
Participants and Collaborations
Consequences
Implementation
Known Uses and Related Patterns

Command Pattern

Motivation – Forces and Solution
Structure
Participants and Collaborations
Consequences
Implementation
Undo and Redo
Known Uses

Chain of Responsibility Pattern

Motivation – Forces
Motivation – Solution
Structure
Participants and Collaborations
Consequences/Applicability
Implementation
Known Uses and Related Patterns

Façade Pattern

Motivation – Forces and Solution
Structure
Participants and Collaborations
Consequences/Applicability
Implementation
Known Uses

Patterns for Enterprise Systems

Meeting the Challenge – Technologies
Meeting the Challenge – Best Practices
Some Patterns for Enterprise Systems
Business Delegate
Business Delegate: Solution
Business Delegate: Structure
Business Delegate: Consequences
Value Object
Value Object: Solution
Value Object: Structure
Value Object: Consequences
Data Access Object (DAO)
DAO: Solution
DAO: Structure
DAO: Consequences
Lazy Load
Lazy Load: Solution
Lazy Load: Consequences

Wrap-Up

What Have We Done?
So – What Do You Think About Patterns?
Where Do We Go From Here?
Do We Fit Into Alexander’s Vision?
Design Patterns Isn’t All You Need
Have Fun

Prerequisites

Prerequisites: 

Some experience in object-oriented thinking/programming, professional experience with object-oriented technologies and UML diagrams, and a basic knowledge of Java.

Audience

Audience: 

Application developers, programmers, system designers, and project manager developers who need to improve the systems development through the use of design patterns.