Object Oriented Design Patterns - Structural Patterns

Slides:



Advertisements
Similar presentations
Matt Klein. Decorator Pattern  Intent  Attach Additional responsibilities to an object by dynamically. Decorators provide a flexible alternative to.
Advertisements

Decorator Pattern Lecture Oo29 Artificial Life Simulation.
Façade Pattern Jeff Schott CS590L Spring What is a façade? 1) The principal face or front of a building 2) A false, superficial, or artificial appearance.
Chapter 8 Object Design Reuse and Patterns. Finding Objects The hardest problems in object-oriented system development are: –Identifying objects –Decomposing.
Design Patterns Module Name - Object Oriented Modeling By Archana Munnangi S R Kumar Utkarsh Batwal ( ) ( ) ( )
PRESENTED BY SANGEETA MEHTA EECS810 UNIVERSITY OF KANSAS OCTOBER 2008 Design Patterns.
Design Patterns.
05 - Patterns Intro.CSC4071 Design Patterns Designing good and reusable OO software is hard. –Mix of specific + general –Impossible to get it right the.
SOFTWARE DESIGN AND ARCHITECTURE
An Introduction to Design Patterns. Introduction Promote reuse. Use the experiences of software developers. A shared library/lingo used by developers.
Design Patterns: Structural Design Patterns
Design Pattern. The Observer Pattern The Observer Pattern defines a one-to-many dependency between objects so that when one object changes state, all.
Design Patterns CSCI 5801: Software Engineering. Design Patterns.
Facade Introduction. Intent Provide a unified interface to a set of interfaces in a subsystem. Facade defines a higher-level interface that makes the.
CS 210 Adapter Pattern October 19 th, Adapters in real life Page 236 – Head First Design Patterns.
Structural Design Patterns
ECE450S – Software Engineering II
Design Patterns CSIS 3701: Advanced Object Oriented Programming.
ECE450 - Software Engineering II1 ECE450 – Software Engineering II Today: Design Patterns IV Structural Patterns.
Design Patterns Structural Patterns. Adapter Convert the interface of a class into another interface clients expect Adapter lets classes work together.
08 - StructuralCSC4071 Structural Patterns concerned with how classes and objects are composed to form larger structures –Adapter interface converter Bridge.
Structural Patterns1 Nour El Kadri SEG 3202 Software Design and Architecture Notes based on U of T Design Patterns class.
FacadeDesign Pattern Provide a unified interface to a set of interfaces in a subsystem. Defines a high level interface that makes the subsystem easier.
CS 210 Final Review November 28, CS 210 Adapter Pattern.
1 Advanced Object-oriented Design – Principles and Patterns Structural Design Patterns.
Adapter and Façade Patterns By Wode Ni and Leonard Bacon-Shone.
The Facade Pattern (Structural) ©SoftMoore ConsultingSlide 1.
Example to motivate discussion We have two lists (of menu items) one implemented using ArrayList and another using Arrays. How does one work with these.
Proxy Pattern defined The Proxy Pattern provides a surrogate or placeholder for another object to control access to it by creating a representative object.
Watching the movie the hard way…. Page 256 – Head First Design Patterns.
CS 210 Proxy Pattern Nov 16 th, RMI – A quick review A simple, easy to understand tutorial is located here:
Design Patterns: Structural Design Patterns General and reusable solutions to common problems in software design Software University
StarBuzz Coffee Recipe Boil some water Brew coffee in boiling water Pour coffee in cup Add sugar and milk Tea Recipe Boil some water Steep tea in boiling.
Five Minute Design Patterns Doug Marttila Forest and the Trees May 30, 2009 Template Factory Singleton Iterator Adapter Façade Observer Command Strategy.
An object's behavior depends on its current state. Operations have large, multipart conditional statements that depend on the object's state.
S.Ducasse Stéphane Ducasse 1 Adapter.
CLASSIFICATION OF DESIGN PATTERNS Hladchuk Maksym.
Design Patterns CSCE 315 – Programming Studio Spring 2013.
Examples (D. Schmidt et al)
Facade Pattern Jim Fawcett CSE776 – Design Patterns Summer 2010
Presented by FACADE PATTERN
Design Patterns: MORE Examples
Object-Orientated Analysis, Design and Programming
Design Patterns: Brief Examples
Chapter 10 Design Patterns.
Software Design Patterns
MPCS – Advanced java Programming
Design Patterns Lecture part 2.
Linzhang Wang Dept. of Computer Sci&Tech, Nanjing University
By SmartBoard team Adapter pattern.
Introduction to Design Patterns
Design Pattern: Facade
Facade Pattern Jim Fawcett CSE776 – Design Patterns Summer 2010
Decorator Design Pattern
Intent (Thanks to Jim Fawcett for the slides)
Presented by Igor Ivković
Design Patterns Satya Puvvada Satya Puvvada.
Decorator Pattern Intent
Jim Fawcett CSE776 – Design Patterns Summer 2003
Object Oriented Design Patterns - Creational Patterns
Decorator Pattern Richard Gesick.
Object Oriented Design Patterns - Behavioral Patterns
IMPORTANT NOTICE TO STUDENTS:
Software Design Lecture : 14.
Structural Patterns: Adapter and Bridge
Introduction to Design Patterns
10. Façade Pattern SE2811 Software Component Design
Presented by Igor Ivković
Decorator Pattern.
defines a higher-level interface that makes a subsystem easier to use
Presentation transcript:

Object Oriented Design Patterns - Structural Patterns IMPORTANT NOTICE TO STUDENTS: These slides are NOT to be used as a replacement for student notes. These slides are sometimes vague and incomplete on purpose to spark class discussions. Object Oriented Design Patterns - Structural Patterns CS 360 Lecture 8

Design Pattern Categories Design Patterns Creational Ways to create objects Behavioral How objects interact with each other Structural How classes and objects are structured

Design Pattern Categories

Structural Design Patterns Goal of Structural Design Patterns: Efficiently creating classes and objects that are composed to form larger structures.

Structural Design Patterns – Adapter Intent Convert the interface of a class into another interface clients expect. Adapter lets classes work together that couldn’t otherwise because of incompatible interfaces. Consequences Helps promote code reusability and flexibility. Client classes are not complicated by needing to use multiple interfaces.

Structural Design Patterns – Adapter Update causes a change to Back end services. Create an Adapter to allow Communication between Front end and updated Back end

Structural Design Patterns - Facade Intent Provide an unified interface to a set of interfaces in a subsystem. Defines a higher-level interface that makes the subsystem easier to use. Consequences Shields clients from subsystem components, reducing the number of objects that the client interacts with. Reduces complexity Promotes weak coupling between the subsystem and its clients. Doesn’t prevent clients from using the subsystem, giving them choice.

Structural Design Patterns - Facade

Structural Design Patterns - Decorator Intent Attach additional responsibilities to an object dynamically. Provides a flexible alternative to subclassing for extending functionality Consequences More flexibility than static inheritance. Extends the functionality of an object without affecting any other objects. Supports the principle that classes should be open for extension but closed for modification.

Structural Design Patterns - Decorator

Project Group Activity Search online content for Structural Design Patterns implemented using languages for your project. Adapter Façade Decorator