CIS 644 Thurs. Oct. 7, 1999 W7B … call for Video Class model … discuss previous pattersn.

Slides:



Advertisements
Similar presentations
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 12Slide 1 Software Design l Objectives To explain how a software design may be represented.
Advertisements

Matt Klein. Decorator Pattern  Intent  Attach Additional responsibilities to an object by dynamically. Decorators provide a flexible alternative to.
The Bridge Pattern.. Intent Decouple an abstraction from its implementation so that the two can vary independently Also known as: Handle/Body.
Objektorienteret Middleware Presentation 2: Distributed Systems – A brush up, and relations to Middleware, Heterogeneity & Transparency.
Design Patterns Yes, they are important Robert Cotton April 23, 2009.
Applying Architectural Styles and Patterns. Outline  Defining Architectural Patterns and Style The activation model Styles and Quality Attributes  Common.
1 SWE Introduction to Software Engineering Lecture 23 – Architectural Design (Chapter 13)
Object Oriented System Development with VB .NET
Fall 2007cs4251 Distributed Computing Umar Kalim Dept. of Communication Systems Engineering 31/10/2007.
Design Patterns CS is not simply about programming
James Tam Introduction To Design Patterns You will learn about design techniques that have been successfully applied to different scenarios.
Spring 2010CS 2251 Design Patterns. Spring 2010CS 2252 What is a Design Pattern? "a general reusable solution to a commonly occurring problem in software.
Software Engineering I Object-Oriented Design Software Design Refinement Using Design Patterns Instructor: Dr. Hany H. Ammar Dept. of Computer Science.
Adapters Presented By Zachary Dea. Definition A pattern found in class diagrams in which you are able to reuse an ‘adaptee’ class by providing a class,
1 Organization of Programming Languages-Cheng (Fall 2004) Concurrency u A PROCESS or THREAD:is a potentially-active execution context. Classic von Neumann.
Chapter 26 Applying Gang of Four Design Patterns 1CS6359 Fall 2012 John Cole.
Proxy Design Pattern Source: Design Patterns – Elements of Reusable Object- Oriented Software; Gamma, et. al.
Client/Server Software Architectures Yonglei Tao.
Chapter 2 Architectural Models. Keywords Middleware Interface vs. implementation Client-server models OOP.
1 INTRO TO BUSINESS COMPONENTS FOR JAVA (BC4J) Matt Fierst Computer Resource Team OracleWorld Session
E81 CSE 532S: Advanced Multi-Paradigm Software Development Chris Gill Department of Computer Science and Engineering Washington University, St. Louis
Software Design Refinement Using Design Patterns Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Implementing Design Patterns Using Java St. Louis Java Special Interest Group Eric M. Burke Object Computing, Inc. Presented on July 9, 1998 (updated July.
WAN technologies and routing Packet switches and store and forward Hierarchical addresses, routing and routing tables Routing table computation Example.
Pattern Oriented Software Architecture for Networked Objects Based on the book By Douglas Schmidt Michael Stal Hans Roehnert Frank Buschmann.
OHTO -99 SOFTWARE ENGINEERING LECTURE 5 Today: - An overview to OO Analysis and OO Design - Introduction of Assignment 2.
Cli/Serv.: rmiCORBA/131 Client/Server Distributed Systems v Objectives –introduce rmi and CORBA , Semester 1, RMI and CORBA.
1 Another group of Patterns Architectural Patterns.
January 12, Introduction to Design Patterns Tim Burke References: –Gamma, Erich, et. al. (AKA, The Gang of Four). Design Patterns: Elements of Reusable.
Patterns in programming 1. What are patterns? “A design pattern is a general, reusable solution to a commonly occurring problem in software. A design.
CIS 451: ASP.NET Objects Dr. Ralph D. Westfall January, 2009.
Architectures of distributed systems Fundamental Models
New features for CORBA 3.0 by Steve Vinoski Presented by Ajay Tandon.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 10Slide 1 Architectural Design l Establishing the overall structure of a software system.
Architectural Patterns Support Lecture. Software Architecture l Architecture is OVERLOADED System architecture Application architecture l Architecture.
L11-12: Design Patterns Definition Iterator (L4: Inheritance)‏ Factory (L4: Inheritance)‏ Strategy (L5: Multiple Inheritance)‏ Composite (L6: Implementation.
Software Design Patterns (1) Introduction. patterns do … & do not … Patterns do... provide common vocabulary provide “shorthand” for effectively communicating.
Chapter 8 Object Design Reuse and Patterns. Object Design Object design is the process of adding details to the requirements analysis and making implementation.
CIS 644 Thurs. Sept. 30, 1999 W6B … assignment: 2ed object model … patterns … Java … assignment: Java … patterns.
Testing Extensible Design Patterns in OO Frameworks through Scenario Templates D.S. Sanders Software Verification & Validation.
Structural Design Patterns
1 A Brief Introduction to Design Patterns Based on materials from Doug Schmidt 1.
Design Patterns CSIS 3701: Advanced Object Oriented Programming.
Introduction to Java Beans CIS 421 Web-based Java Programming.
Shuman Guo CSc 8320 Advanced Operating Systems
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 13. Review Shared Data Software Architectures – Black board Style architecture.
Behavioural Design Patterns Quote du jour: ECE450S – Software Engineering II I have not failed. I've just found 10,000 ways that won't work. - Thomas Edison.
OBJECT ORIENTED AND FUNCTION ORIENTED DESIGN 1 Chapter 6.
CSC480 Software Engineering Lecture 10 September 25, 2002.
Behavioral Patterns CSE301 University of Sunderland Harry R Erwin, PhD.
CIS 644 Thus. Oct. 28, 1999 W10B … misc. questions … thread, Runable … communication patterns.
Internet and Intranet Protocols and Applications Lecture 5a: HTTP Client-Server Design and Implementation February 15, 2005 Arthur Goldberg Computer Science.
Design Patterns SE464 Derek Rayside images from NetObjectives.com & Wikipedia.
The CoBFIT Toolkit PODC-2007, Portland, Oregon, USA August 14, 2007 HariGovind Ramasamy IBM Zurich Research Laboratory Mouna Seri and William H. Sanders.
The Mediator Pattern (Behavioral) ©SoftMoore ConsultingSlide 1.
Adapter and Façade Patterns By Wode Ni and Leonard Bacon-Shone.
Secure middleware patterns E.B.Fernandez. Middleware security Architectures have been studied and several patterns exist Security aspects have not been.
CS 5150 Software Engineering Lecture 16 Program Design 3.
Banaras Hindu University. A Course on Software Reuse by Design Patterns and Frameworks.
UA. Unified Approach ( UA ) It combines best practices, methods process, guidelines & methodology (Rumbaugh, Booch and Jacobson) along with UML notations.
1 CS590L Distributed Component Architecture Yugi Lee STB #555 (816) * This presentation is prepared based.
Design Patterns CSCE 315 – Programming Studio Spring 2013.
Distributed Systems Lecture 6 Global states and snapshots 1.
Design Patterns: MORE Examples
MPCS – Advanced java Programming
Instructor: Dr. Hany H. Ammar
FRAMEWORKS AND REUSE What is “Framework”?
CIS 644 Thurs. Sept. 23, W5B … scenarios … signatures …. review
Presentation transcript:

CIS 644 Thurs. Oct. 7, 1999 W7B … call for Video Class model … discuss previous pattersn

Video store class model: send asap, I will select one version to be used for scenarios … to be posted

>I have reviewed > Object Models: > Startegies, patterns, and Applications. >... no mention of visitors, iterators or etc.. >...I cannot tie it into the lectures. ANS: yes, Coad give PD patterns Gamma gives implementation patts … wait on Coad patterns

> Gamma text doesn't seem to help G is reference book more than class text. > Can you provide examples … hmmm /patterns/dpcat/DPCPP.zip C++ examples from Gamma research.html

> Okay, I'll open the discussion. > I don't understand >visitors, > command/action/transaction, > framework.

Framework … some books refer to a collection or hierarchy of classes as a framework is AWT a framework ?

Frameworks: (1) AppWizard in Studio, Café, … (2) Doug Schmidt ACE ACE-overview.html

ACE ADAPTIVE Communication Environment...free, open-source, OO framework...reusable C++ wrapper facades and framework components for common communications event demultiplexing.. event dispatching...signal handling...service initialization... interprocess communication... shared memory management... message routing... dynamic config of distributed services… concurrent execution & synchronization.

Mohamed Fayad, Douglas C. Schmidt (Editor), Ralph Johnson (Editor), Building Application Frameworks : Object-Oriented Foundations of Framework Wiley, Sept. 1999,

(3) Matt Dwyer, pattern = concurrency coordination … work pool + replicated workers framework = “application independent concurrency skeleton” (ps) CAS/cas.html

>Comments on Iterator vs. Visitor: >An iterator provides the ability to move >through a collection without knowing >the underlying implementation of the >collection (e.g., vector or hashtable). true, but the collection should also provide that ! iterator gives separate retained state of the iteration !

>It also strikes me as being non-OO. >….basic concept of OO is that > every object maintains its own state > and performs its own operations. yes and no !!.. every object “owns” its own state …...but reality of implementation is redundant state info for convenience / efficiency ! state of iterator is the state of some object using the collection.. not state of the coll.

“A visitor provides the ability to add functionality to an existing class hierarchy without changing that hierarchy but by adding a separate class hierarchy.” > This seems quite complicated, > even after reviewing both Gamma > and Eckel ("Thinking in Java"). >... very difficult to follow.

>the "visitor" wants to perform operations >on some other object rather than itself. …?? violated OO concepts?? > cannot relate the visitor to the PD. motivation is to make reusable parts … not related to any specific PD. … that is concept of patterns

build visitor acceptor into the target object class … and collection class now client can add new operations

let us post some Java samples.

END