Vous êtes sur la page 1sur 27

Chapter 2: Approaches to System Development : Object Orientation

What Is an Object?

An entity that encapsulates data and behavior - Objects are categorized into classes

- Each individual object is an instance of a class


Chapter 2

What Is Encapsulation?

The characteristic of object-orientation in which data and behavior are bundled into a class and hidden from the outside world
Access to the data and behavior is provided and controlled through an objects interface

Chapter 2

What Is a Class?
A category of objects that share the same attributes, operations, relationships, and semantics
All objects are instances of classes

Chapter 2

Name Attributes

Operations

Chapter 2

What Is an Attribute?
Attribute- a named property of a class that describes a range of values that instances of the attribute might hold
Attributes are the way classes encapsulate data

Chapter 2

Minus sign indicates these are private (hidden)

Attributes are properties containing values


Chapter 2

What Is an Operation?

A behavior of an object
Implemented in classes are methods Methods are identified and invoked by their signatures, including name, parameters, and return type

Chapter 2

Signature has name, parameters, return type

Method implements the behavior

Chapter 2

Plus sign indicates these are public (accessible)

Chapter 2

What Is Generalization?

A relationship between a more general (or parent) class and a more specific (or child) class
The more specific class has additional attributes and operations

Chapter 2

What Is Inheritance?

The mechanism by which the more specific class in a generalization relationship includes the attributes and operations of the more general class

Chapter 2

Subclasses inherit all attributes and operations of superclasses

Generalization represented by arrows from subclass to superclass

Chapter 2

What Is Polymorphism?

The ability for different classes of objects to respond to identical messages in different ways
Polymorphism = having many forms Different behaviors for the same message

Chapter 2

Here, each type of vehicle has its own version of calcPrice()

Chapter 2

What Is a Component?
A

replaceable part of a system providing a clearly defined function through a set of interfaces
of classes working together toward a common end; a subsystem

Group

Chapter 2

What Is an Interface?

The mechanism by which users of a component invoke its behaviors and manipulate its properties
The interface is implemented by method signatures

Chapter 2

Interfaces are represented as small rectangles

Chapter 2

What Is an Association?

A relationship or link between instances of (or objects) of classes Three types:


Simple associations: no ownership Aggregations: part-whole relationships where the part

can exist independently of the whole Compositions: part-whole relationships where the part and the whole are fully dependent on each other
Chapter 2

This is a binary association, showing roles and multiplicities

roles

multiplicities

Chapter 2

Systems Modeling
Systems modeling creating an abstraction of a system Abstraction focusing on the relevant aspects and ignoring other details UML is a modeling approach, involving these diagrams:

Use-case, sequence, communication, class, object,

activity, state, composite structure, package, component, deployment


Chapter 2

Unified Modeling Language (UML)

A standard notation for representing objectoriented systems


Boxes represent classes, components, packages, objects
Containing attributes and operations Provide interfaces to external entities

Lines represent generalization and other relationships

Chapter 2

Sample UML Diagram


Chapter 2

UML Diagrams

Use-case diagram shows use cases, actors, and relationships describing user interactions with system

Sequence diagram shows interactions of objects via message-passing in time-ordered manner


Communication diagram similar to sequence diagram, but without the time-ordering

Chapter 2

UML Diagrams

Class diagram shows set of classes and relationships (generalizations and associations) Object diagram shows specific instances of a class diagram Activity diagram shows flow of activities, or wokflow of objects

Chapter 2

UML Diagrams (cont.)

State diagram shows transitioning of an object from state to state in response to events Composite structure diagram shows how a component whole is made up of its parts Package diagram shows logical grouping of analysis or design elements

Chapter 2

UML Diagrams (cont.)

Component diagram shows software components or modules and their relationships


Deployment diagram shows configuration of runtime processing nodes and their components

Chapter 2

Vous aimerez peut-être aussi