Shanghai Jiao Tong University 上海交通大学 Object Oriented Analysis and Design Introduction to Object Technology 上海交通大学软件工程中心
Shanghai Jiao Tong University 上海交通大学软件工程中心 Object Oriented Analysis and Design Introduction to Object Technology
Outline ★◆Introduction to object technology ◆ Concepts of Object Orientation Object Oriented Analysis and Design 2
Object Oriented Analysis and Design 2 Outline Introduction to object technology Concepts of Object Orientation
What Is Object Technology? A set of principles (abstraction, encapsulation, polymorphism)guiding software construction, together with languages, databases,and other tools that support those principles.(Object Technology A Manager's Guide,Taylor,1997.) Object Oriented Analysis and Design
Object Oriented Analysis and Design 3 What Is Object Technology? A set of principles (abstraction, encapsulation, polymorphism) guiding software construction, together with languages, databases, and other tools that support those principles. (Object Technology - A Manager’s Guide, Taylor, 1997.)
The Strengths of Object Technology Reflects a single paradigm Facilitates architectural and code reuse Reflects real world models more closely ◆ Encourages stability ◆Is adaptive to change Object Oriented Analysis and Design 4
Object Oriented Analysis and Design 4 The Strengths of Object Technology Reflects a single paradigm Facilitates architectural and code reuse Reflects real world models more closely Encourages stability Is adaptive to change
The History of Object Technology Major object technology milestones Simula C++ UML Future 1967 Late 1980s 1996 1972 1991 2003 ??? Smalltalk Java MDA Object Oriented Analysis and Design 5
Object Oriented Analysis and Design 5 Major object technology milestones Simula 1967 C ++ Late 1980s Smalltalk 1972 Java 1991 UML 1996 MDA 2003 The History of Object Technology ??? Future
Where Is Object Technology Used? Client/Server Systems and Web Development Object technology allows companies to encapsulate business information in objects and helps to distribute processing across the Internet or a network. Object Oriented Analysis and Design 6
Object Oriented Analysis and Design 6 Where Is Object Technology Used? Client/Server Systems and Web Development ▪ Object technology allows companies to encapsulate business information in objects and helps to distribute processing across the Internet or a network
Where Is Object Technology Used?(cont.) ◆Real-time systems Object technology enables real-time systems to be developed with higher quality and flexibility. 12m 4四四Gm 西D⊙ 0OP# ⊙① 0 g Object Oriented Analysis and Design 7
Object Oriented Analysis and Design 7 Where Is Object Technology Used? (cont.) Real-time systems ▪ Object technology enables real-time systems to be developed with higher quality and flexibility. 4
Differences Between OO and Structured Design Object-orientation (OO) Melds the data and data flow process together early in the lifecycle Has a high level of encapsulation Promotes reuse of code differently Permits more software extensibility Object Oriented Analysis and Design 8
Object Oriented Analysis and Design 8 Differences Between OO and Structured Design Object-orientation (OO) ▪ Melds the data and data flow process together early in the lifecycle ▪ Has a high level of encapsulation ▪ Promotes reuse of code differently ▪ Permits more software extensibility
Outline Introduction to object technology Concepts of Object Orientation What is an object? Four principles of OO What is a class? Polymorphism and generalization Organizing model elements Object Oriented Analysis and Design 9
Object Oriented Analysis and Design 9 Outline Introduction to object technology Concepts of Object Orientation ▪ What is an object? ▪ Four principles of OO ▪ What is a class? ▪ Polymorphism and generalization ▪ Organizing model elements
What Is an Object? Informally,an object represents an entity, either physical,conceptual,or software. Physical entity Truck Conceptual entity Chemical Process Software entity Linked List Object Oriented Analysis and Design 10
Object Oriented Analysis and Design 10 Truck Chemical Process Linked List What Is an Object? Informally, an object represents an entity, either physical, conceptual, or software. ▪ Physical entity ▪ Conceptual entity ▪ Software entity