SlideShare ist ein Scribd-Unternehmen logo
1 von 36
Chapter 9: Class and Method Design
Objectives ,[object Object],[object Object],[object Object],[object Object],[object Object]
BASIC CHARACTERISTICS OF OBJECT ORIENTATION
Elements of OOSAD ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Encapsulation & Info Hiding ,[object Object],[object Object],[object Object]
Polymorphism & Dynamic Binding ,[object Object],[object Object],[object Object],[object Object],[object Object]
Polymorphism Example
Inheritance ,[object Object],[object Object],[object Object],[object Object]
Rumbaugh’s Rules ,[object Object],[object Object],[object Object],[object Object]
DESIGN CRITERIA
Coupling ,[object Object],[object Object]
Law of Demeter Messages should be sent only by an object: to itself to objects contained in attributes of itself or a superclass to an object that is passed as a parameter to the method to an object that is created by the method to an object that is stored in a global variable
Types of Interactive Coupling
Cohesion ,[object Object],[object Object],[object Object]
Types of Method Cohesion
Types of Class Cohesion
Connascence ,[object Object],[object Object],[object Object],[object Object]
Types of Connascence
OBJECT DESIGN ACTIVITIES
Additional Specification ,[object Object],[object Object],[object Object],[object Object],[object Object]
Signatures for each method ,[object Object],[object Object],[object Object]
Define constraints ,[object Object],[object Object],[object Object],[object Object]
Identify Opportunities for Reuse ,[object Object],[object Object],[object Object],[object Object]
Restructure the Design ,[object Object],[object Object],[object Object],[object Object]
Optimizing the Design ,[object Object],[object Object],[object Object],[object Object],[object Object]
CONSTRAINTS AND CONTRACTS
Types of Constraints ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Invariants on a Class Diagram
Contracts ,[object Object],[object Object],[object Object]
Elements of a Contract
Sample Contract Form
METHOD SPECIFICATION
Method Specification Syntax ,[object Object],[object Object],[object Object],[object Object],[object Object]
Structured English
Pseudocode Example (Get CD-info module) Accept (CD_title) {Required} Accept (CD_artist) {Required} Accept (CD_category) {Required} Accept (CD_length) Return
Summary ,[object Object],[object Object],[object Object],[object Object],[object Object]

Weitere ähnliche Inhalte

Andere mochten auch

Management information system database management
Management information system database managementManagement information system database management
Management information system database managementOnline
 
System Analysis and Design Proposal presentation
System Analysis and Design Proposal presentationSystem Analysis and Design Proposal presentation
System Analysis and Design Proposal presentationLeslie Ybañez
 
Logical design vs physical design
Logical design vs physical designLogical design vs physical design
Logical design vs physical designMd. Mahedi Mahfuj
 
analysis and design of information system
analysis and design of information systemanalysis and design of information system
analysis and design of information systemRenu Sharma
 
System Analysis And Design Management Information System
System Analysis And Design Management Information SystemSystem Analysis And Design Management Information System
System Analysis And Design Management Information Systemnayanav
 
System Analysis and Design
System Analysis and DesignSystem Analysis and Design
System Analysis and DesignAamir Abbas
 

Andere mochten auch (8)

Management information system database management
Management information system database managementManagement information system database management
Management information system database management
 
Mis assignment (database)
Mis assignment (database)Mis assignment (database)
Mis assignment (database)
 
System Analysis and Design Proposal presentation
System Analysis and Design Proposal presentationSystem Analysis and Design Proposal presentation
System Analysis and Design Proposal presentation
 
Logical design vs physical design
Logical design vs physical designLogical design vs physical design
Logical design vs physical design
 
analysis and design of information system
analysis and design of information systemanalysis and design of information system
analysis and design of information system
 
Data Base Management System
Data Base Management SystemData Base Management System
Data Base Management System
 
System Analysis And Design Management Information System
System Analysis And Design Management Information SystemSystem Analysis And Design Management Information System
System Analysis And Design Management Information System
 
System Analysis and Design
System Analysis and DesignSystem Analysis and Design
System Analysis and Design
 

Ähnlich wie Ch09

Nina Grantcharova - Approach to Separation of Concerns via Design Patterns
Nina Grantcharova - Approach to Separation of Concerns via Design PatternsNina Grantcharova - Approach to Separation of Concerns via Design Patterns
Nina Grantcharova - Approach to Separation of Concerns via Design Patternsiasaglobal
 
Design pattern & categories
Design pattern & categoriesDesign pattern & categories
Design pattern & categoriesHimanshu
 
Object Oriented Programming In .Net
Object Oriented Programming In .NetObject Oriented Programming In .Net
Object Oriented Programming In .NetGreg Sohl
 
Object Oriented Design
Object Oriented DesignObject Oriented Design
Object Oriented DesignAravinth NSP
 
Basic design pattern interview questions
Basic design pattern interview questionsBasic design pattern interview questions
Basic design pattern interview questionsjinaldesailive
 
Bartlesville Dot Net User Group Design Patterns
Bartlesville Dot Net User Group Design PatternsBartlesville Dot Net User Group Design Patterns
Bartlesville Dot Net User Group Design PatternsJason Townsend, MBA
 
Behavioral pattern By:-Priyanka Pradhan
Behavioral pattern By:-Priyanka PradhanBehavioral pattern By:-Priyanka Pradhan
Behavioral pattern By:-Priyanka PradhanPriyanka Pradhan
 
Abap Inicio
Abap InicioAbap Inicio
Abap Iniciounifor
 
Oo abap-sap-1206973306636228-5
Oo abap-sap-1206973306636228-5Oo abap-sap-1206973306636228-5
Oo abap-sap-1206973306636228-5prakash185645
 
The Nature Of Patterns
The Nature Of PatternsThe Nature Of Patterns
The Nature Of PatternsNick Harrison
 
Chapter 5 declaring classes & oop
Chapter 5 declaring classes  & oopChapter 5 declaring classes  & oop
Chapter 5 declaring classes & oopsshhzap
 
06 styles and_greenfield_design
06 styles and_greenfield_design06 styles and_greenfield_design
06 styles and_greenfield_designMajong DevJfu
 

Ähnlich wie Ch09 (20)

Oop concepts
Oop conceptsOop concepts
Oop concepts
 
Nina Grantcharova - Approach to Separation of Concerns via Design Patterns
Nina Grantcharova - Approach to Separation of Concerns via Design PatternsNina Grantcharova - Approach to Separation of Concerns via Design Patterns
Nina Grantcharova - Approach to Separation of Concerns via Design Patterns
 
Oops design pattern_amitgupta
Oops design pattern_amitguptaOops design pattern_amitgupta
Oops design pattern_amitgupta
 
Design pattern & categories
Design pattern & categoriesDesign pattern & categories
Design pattern & categories
 
Object Oriented Programming In .Net
Object Oriented Programming In .NetObject Oriented Programming In .Net
Object Oriented Programming In .Net
 
Object Oriented Design
Object Oriented DesignObject Oriented Design
Object Oriented Design
 
Object Oriented Design
Object Oriented DesignObject Oriented Design
Object Oriented Design
 
Basic design pattern interview questions
Basic design pattern interview questionsBasic design pattern interview questions
Basic design pattern interview questions
 
C# - Igor Ralić
C# - Igor RalićC# - Igor Ralić
C# - Igor Ralić
 
Bartlesville Dot Net User Group Design Patterns
Bartlesville Dot Net User Group Design PatternsBartlesville Dot Net User Group Design Patterns
Bartlesville Dot Net User Group Design Patterns
 
Behavioral pattern By:-Priyanka Pradhan
Behavioral pattern By:-Priyanka PradhanBehavioral pattern By:-Priyanka Pradhan
Behavioral pattern By:-Priyanka Pradhan
 
Abap Inicio
Abap InicioAbap Inicio
Abap Inicio
 
Oo abap-sap-1206973306636228-5
Oo abap-sap-1206973306636228-5Oo abap-sap-1206973306636228-5
Oo abap-sap-1206973306636228-5
 
Csci360 20 (1)
Csci360 20 (1)Csci360 20 (1)
Csci360 20 (1)
 
Csci360 20
Csci360 20Csci360 20
Csci360 20
 
Unit 3
Unit 3Unit 3
Unit 3
 
The Nature Of Patterns
The Nature Of PatternsThe Nature Of Patterns
The Nature Of Patterns
 
Chapter 5 declaring classes & oop
Chapter 5 declaring classes  & oopChapter 5 declaring classes  & oop
Chapter 5 declaring classes & oop
 
06 styles and_greenfield_design
06 styles and_greenfield_design06 styles and_greenfield_design
06 styles and_greenfield_design
 
CIS266 Midterm Review
CIS266 Midterm ReviewCIS266 Midterm Review
CIS266 Midterm Review
 

Mehr von 蕭美蓮 (19)

Ch01
Ch01Ch01
Ch01
 
Ch01
Ch01Ch01
Ch01
 
Ch14
Ch14Ch14
Ch14
 
Ch13
Ch13Ch13
Ch13
 
Ch12
Ch12Ch12
Ch12
 
Ch11
Ch11Ch11
Ch11
 
Ch10
Ch10Ch10
Ch10
 
Ch08
Ch08Ch08
Ch08
 
Ch07
Ch07Ch07
Ch07
 
Ch06
Ch06Ch06
Ch06
 
Ch05
Ch05Ch05
Ch05
 
Ch04
Ch04Ch04
Ch04
 
Ch03
Ch03Ch03
Ch03
 
Ch02
Ch02Ch02
Ch02
 
Ch10
Ch10Ch10
Ch10
 
完整資料表
完整資料表完整資料表
完整資料表
 
Web2
Web2Web2
Web2
 
專案管理心得
專案管理心得專案管理心得
專案管理心得
 
Acer1
Acer1Acer1
Acer1
 

Ch09