SlideShare a Scribd company logo
1
2
 System development refers to all activities that go into
producing information system solution.
 System development activities consist of system
analysis, modeling, design, implementation, testing and
maintenance.
 Object-Oriented (OO) systems development is a way to
develop software by building self-contained modules
that can be more easily:
 Replaced
 Modified
 and Reused.
3
 A software system is a set of mechanism for performing
certain action on certain data.
Algorithm + Data structure = Program
4
 The code is subdivided into modules
 Each module is made of procedures and data structures
 Procedures operate on data, e.g. modifying them
 e.g. the “C” programming language
 There is no strong connection between procedures
 Every procedure may possibly access any data and modify
it and data
5
 OO approach is more like creating a lot of helpers that
take on an active role, a spirit, that form a community
whose interactions become the application.
 Models the problem to be solved as a set of interacting
objects, each carrying its own state and exhibiting its
own behavior
 By separating concerns, this approach has proved to be
robust and useful to solve more complex programming
problems.
6
 The physical world is made of a set of objects that can
interact
 Each of them presents
 An identity (objects can be recognized)
 A state (objects remember their history)
 A behavior (objects react to external stimuli in a
predictable way)
7
 Faster development,
 Increased quality
 Raising the level of abstraction.
 It adapts to
 Changing requirements
 Easier to maintain
 More robust
 Promote greater design
 Code reuse
8
 Goals:
 Define Objects and classes
 Describe objects‘ methods, attributes and how objects
respond to messages,
 Define Polymorphism, Inheritance, data abstraction,
encapsulation, and protocol,
 Describe objects relationships,
 Describe object persistence.
 Understand meta-classes.
9
 The term object was first formally utilized in the Similar
language to simulate some aspect of reality.
 An object is an entity.
 It knows things (has attributes)
 It does things (provides services or has methods)
 Note:
 Attributes or properties represented by data type and
describe object‘s state (data)
 Methods define objects behavior and specify the way in
which an Object‘s data are manipulated.
10
 It Knows things (attributes)
 I am an Employee.
 I know my name, social security number and my address.
 Attributes
 I am a Car.
 I know my color,
 manufacturer, cost,
 owner and model.
 It does things (methods)
 I know how to compute my payroll.
11
 In an object-oriented system, everything is an object:
numbers, arrays, records, fields, files, forms, an
invoice, etc.
 An Object is anything, real or abstract, about which we
store data and those methods that manipulate the data.
 Conceptually, each object is responsible for itself.
 A window object is responsible for things like opening,
sizing, and closing itself.
12
 When developing an O-O application, two basic
questions always arise.
 What objects does the application need?
 What functionality should those objects have?
13
 Simple Name (written as UpperCase-first Noun)
 Path Name
14
 Represent named properties of a UML class
 UML class can have many attributes of different names
 Attribute name is generally a short noun or a noun
phrase written in lowerCase-first text
 Attribute declaration may include visibility, type and
initial value: +attributeName : type = initial-value
15
 Represent named services provided by a UML class
 UML class can have many operations of different
names
 Operation name is generally a short verb or a verb
phrase written in lowerCase-first text
 Operation may include visibility, parameters, and
return type: +opName(param1 : type = initial_value)
: return-type
16
 Three levels of class, attribute and operation visibility:
• private (-), available only to the current class
• protected (#), available to the current and inherited
classes
• public (+), available to the current and other classes
17
 Each class represents a set of objects that share the
same attributes, operations, relationships, and
semantics
 For each of the class attributes, objects can have
specific attribute values
 For each of the class operations, objects may have
different implementations
18
 Represent a relation between a parent (a more abstract
class) and a child (a more specific class)
 Generally referred to as a “is-a-kind-of” relationship
 Child objects may be used instead of parent objects
since they share attributes and operations; the opposite
is not true
19
 An object-oriented system organizes classes into
subclass-super hierarchy.
 At the top of the hierarchy are the most general classes
and at the bottom are the most specific
 A subclass inherits all of the properties and methods
(procedures) defined in its super class.
20
 Inheritance is a relationship between classes where one
class is the parent class of another (derived) class.
 Inheritance allows classes to share and reuse behaviors
and attributes.
 The real advantage of inheritance is that we can build
upon what we already have and,
 Reuse what we already have.
21
22
23
 OO systems permit a class to inherit from more than
one superclass.
24
 Information hiding is a principle of hiding internal data
and procedures of an object.
 By providing an interface to each object in such a way
as to reveal as little as possible about its inner
workings.
 Encapsulation protects the data from corruption.
25
 Objects perform operations in response to messages.
For example, you may communicate with your
computer by sending it a message from hand-help
controller.
26
 Consider a payroll program that processes employee
records at a small manufacturing firm. This company
has three types of employees:
 Managers: Receive a regular salary.
 Office Workers: Receive an hourly wage and are eligible
for overtime after 40 hours.
 Production Workers: Are paid according to a piece rate.
27
 Structured Approach
FOR EVERY EMPLOYEE DO
BEGIN
IF employee = manager THEN
CALL computeManagerSalary
IF employee = office worker THEN
CALL computeOfficeWorkerSalary
IF employee = production worker THEN
CALL computeProductionWorkerSalary
END
28
 OO Approach
29
 OO Approach
FOR EVERY EMPLOYEE DO
BEGIN
employee computePayroll
END
30
 Polymorphism means that the same operation may
behave differently on different classes.
 Example: computePayroll
31
 Link: model of logical or physical link between objects
32
 Relationship: descriptor of links
33
 Multiplicity: constraint on the min/max number of links
connected to an object
34
 The concept of association represents relationships
between objects and classes. For example a pilot can
fly planes
 Association can be binary, between two classes, or n-
ary, among more than two classes
 Can include association name, direction, role names,
multiplicity, and aggregation type
35
 Represent a specific, whole/part structural relationship
between class objects
 Composition [is entirely made of]: (closed diamond)
represents exclusive relationship between two class
objects (e.g., a faculty cannot exist without nor be a part
of more than one university)
 Aggregation [is part of]: (open diamond) represents
nonexclusive relationship between two class objects (e.g.,
a student is a part of one or more faculties)
36
 Objects have a lifetime. An object can persist beyond
application session boundaries, during which the object
is stored in a file or a database, in some file or database
form.
37
 Everything is an object.
 How about a class?
 Is a class an object?
 Yes, a class is an object! So, if it is an object, it must
belong to a class.
 Indeed, class belongs to a class called a Meta-Class or
a class' class.
 Meta-class used by the compiler. For example, the
meta-classes handle messages to classes, such as
constructors and "new.“
38

More Related Content

PDF
SE18_Lec 08_UML Class Diagram
PDF
SE18_Lec 10_ UML Behaviour and Interaction Diagrams
PDF
SE_Lec 07_UML CLASS DIAGRAM
PDF
SE_Lec 09_ UML Behaviour Diagrams
PDF
SE_Lec 08_UML Use Cases
PDF
SE18_Lec 06_Object Oriented Analysis and Design
PDF
SE_Lec 05_System Modelling and Context Model
PPTX
Dynamic and Static Modeling
SE18_Lec 08_UML Class Diagram
SE18_Lec 10_ UML Behaviour and Interaction Diagrams
SE_Lec 07_UML CLASS DIAGRAM
SE_Lec 09_ UML Behaviour Diagrams
SE_Lec 08_UML Use Cases
SE18_Lec 06_Object Oriented Analysis and Design
SE_Lec 05_System Modelling and Context Model
Dynamic and Static Modeling

What's hot (20)

PPTX
UML tutorial
PPT
System Models in Software Engineering SE7
PPTX
Object Modeling Techniques
PPTX
Interaction Modeling
PPTX
8 system models (1)
PPTX
System modeling
PDF
Unit 4- Software Engineering System Model Notes
PPT
M03 2 Behavioral Diagrams
PPTX
Class diagram, use case and sequence diagram
PPT
Collaboration Diagram
PPTX
UML Diagrams
PDF
Unit 3 system models
PPTX
Capturing System Behaviour
PPT
Module 3 Object Oriented Data Models Object Oriented notations
PDF
Darshan sem4 140703_ooad_2014 (diagrams)
PPTX
Interaction overview and Profile UML Diagrams
PPT
Use case Diagram and Sequence Diagram
PDF
Workshop on Basics of Software Engineering (DFD, UML and Project Culture)
PPT
Functional modeling
PPT
UML tutorial
System Models in Software Engineering SE7
Object Modeling Techniques
Interaction Modeling
8 system models (1)
System modeling
Unit 4- Software Engineering System Model Notes
M03 2 Behavioral Diagrams
Class diagram, use case and sequence diagram
Collaboration Diagram
UML Diagrams
Unit 3 system models
Capturing System Behaviour
Module 3 Object Oriented Data Models Object Oriented notations
Darshan sem4 140703_ooad_2014 (diagrams)
Interaction overview and Profile UML Diagrams
Use case Diagram and Sequence Diagram
Workshop on Basics of Software Engineering (DFD, UML and Project Culture)
Functional modeling
Ad

Viewers also liked (20)

PDF
SE_Lec 00_ Software Engineering 1
PDF
SE_Lec 04_Agile Software Development
PDF
DSP_FOEHU - Lec 02 - Frequency Domain Analysis of Signals and Systems
PDF
SE2018_Lec 16_ Architectural Design
PDF
DSP_FOEHU - Lec 05 - Frequency-Domain Representation of Discrete Time Signals
PDF
SE_Lec 02_Software Life Cycle Models
PDF
SE_Lec 01_ Introduction to Software Enginerring
PDF
SE_Lec 03_Requirements Analysis and Specification
PDF
Se2 lec 13 uml state machines
PDF
DSP_FOEHU - Lec 06 - The z-Transform
PDF
SE2_Lec 19_Design Principles and Design Patterns
PDF
SE2_Lec 18_ Coding
PDF
DSP_FOEHU - MATLAB 03 - The z-Transform
PDF
SE_Lec 10_ Software Code of Ethics
PDF
SE_Lec 12_ Project Planning
PDF
DSP_FOEHU - MATLAB 02 - The Discrete-time Fourier Analysis
PDF
DSP_FOEHU - MATLAB 01 - Discrete Time Signals and Systems
PDF
UML TUTORIALS
PPTX
Unit 1- OOAD ppt
SE_Lec 00_ Software Engineering 1
SE_Lec 04_Agile Software Development
DSP_FOEHU - Lec 02 - Frequency Domain Analysis of Signals and Systems
SE2018_Lec 16_ Architectural Design
DSP_FOEHU - Lec 05 - Frequency-Domain Representation of Discrete Time Signals
SE_Lec 02_Software Life Cycle Models
SE_Lec 01_ Introduction to Software Enginerring
SE_Lec 03_Requirements Analysis and Specification
Se2 lec 13 uml state machines
DSP_FOEHU - Lec 06 - The z-Transform
SE2_Lec 19_Design Principles and Design Patterns
SE2_Lec 18_ Coding
DSP_FOEHU - MATLAB 03 - The z-Transform
SE_Lec 10_ Software Code of Ethics
SE_Lec 12_ Project Planning
DSP_FOEHU - MATLAB 02 - The Discrete-time Fourier Analysis
DSP_FOEHU - MATLAB 01 - Discrete Time Signals and Systems
UML TUTORIALS
Unit 1- OOAD ppt
Ad

Similar to SE_Lec 06_Object Oriented Analysis and Design (20)

PPTX
INTRODUCTION AND BASIC CONCEPT OF OOAD.pptx
PPT
Object Oriented Design
PPT
Object Oriented Design
PPTX
3_ObjectOrientedSystems.pptx
PPT
ObjectOrientedSystems.ppt
PPTX
chapterOne.pptxFSdgfqdzwwfagxgghvkjljhcxCZZXvcbx
PPTX
CS8592-OOAD-UNIT II-STATIC UML DIAGRAMS PPT
PDF
Bt8901 objective oriented systems1
PPT
An Evolution of UML projects.and also what is project
PPT
Object oriented programming in C++ programming language
PPT
Introduction to software engineering in data science.ppt
PPT
Object oriented programming language in software engineering
PPT
General OOP concept [by-Digvijay]
PPT
object modeling chapter 4 for students a
PPTX
UNIT II STATIC UML DIAGRAMS.pptx
PPT
PPT
Oops slide
DOC
Introduction to OOPs Concept- Features, Basic concepts, Benefits and Applicat...
DOCX
Ooad notes
PDF
System Desigren_OOD-9asdasdasdsasdasdasd.pdf
INTRODUCTION AND BASIC CONCEPT OF OOAD.pptx
Object Oriented Design
Object Oriented Design
3_ObjectOrientedSystems.pptx
ObjectOrientedSystems.ppt
chapterOne.pptxFSdgfqdzwwfagxgghvkjljhcxCZZXvcbx
CS8592-OOAD-UNIT II-STATIC UML DIAGRAMS PPT
Bt8901 objective oriented systems1
An Evolution of UML projects.and also what is project
Object oriented programming in C++ programming language
Introduction to software engineering in data science.ppt
Object oriented programming language in software engineering
General OOP concept [by-Digvijay]
object modeling chapter 4 for students a
UNIT II STATIC UML DIAGRAMS.pptx
Oops slide
Introduction to OOPs Concept- Features, Basic concepts, Benefits and Applicat...
Ooad notes
System Desigren_OOD-9asdasdasdsasdasdasd.pdf

More from Amr E. Mohamed (20)

PDF
Dsp 2018 foehu - lec 10 - multi-rate digital signal processing
PDF
Dcs lec03 - z-analysis of discrete time control systems
PDF
Dcs lec02 - z-transform
PDF
Dcs lec01 - introduction to discrete-time control systems
PDF
DDSP_2018_FOEHU - Lec 10 - Digital Signal Processing Applications
PDF
DSP_2018_FOEHU - Lec 07 - IIR Filter Design
PDF
DSP_2018_FOEHU - Lec 06 - FIR Filter Design
PDF
SE2018_Lec 17_ Coding
PDF
SE2018_Lec-22_-Continuous-Integration-Tools
PDF
SE2018_Lec 21_ Software Configuration Management (SCM)
PDF
SE2018_Lec 18_ Design Principles and Design Patterns
PDF
Selenium - Introduction
PPTX
SE2018_Lec 20_ Test-Driven Development (TDD)
PDF
SE2018_Lec 19_ Software Testing
PDF
DSP_2018_FOEHU - Lec 08 - The Discrete Fourier Transform
PDF
DSP_2018_FOEHU - Lec 05 - Digital Filters
PDF
DSP_2018_FOEHU - Lec 04 - The z-Transform
PDF
DSP_2018_FOEHU - Lec 03 - Discrete-Time Signals and Systems
PDF
DSP_2018_FOEHU - Lec 02 - Sampling of Continuous Time Signals
PDF
SE2018_Lec 15_ Software Design
Dsp 2018 foehu - lec 10 - multi-rate digital signal processing
Dcs lec03 - z-analysis of discrete time control systems
Dcs lec02 - z-transform
Dcs lec01 - introduction to discrete-time control systems
DDSP_2018_FOEHU - Lec 10 - Digital Signal Processing Applications
DSP_2018_FOEHU - Lec 07 - IIR Filter Design
DSP_2018_FOEHU - Lec 06 - FIR Filter Design
SE2018_Lec 17_ Coding
SE2018_Lec-22_-Continuous-Integration-Tools
SE2018_Lec 21_ Software Configuration Management (SCM)
SE2018_Lec 18_ Design Principles and Design Patterns
Selenium - Introduction
SE2018_Lec 20_ Test-Driven Development (TDD)
SE2018_Lec 19_ Software Testing
DSP_2018_FOEHU - Lec 08 - The Discrete Fourier Transform
DSP_2018_FOEHU - Lec 05 - Digital Filters
DSP_2018_FOEHU - Lec 04 - The z-Transform
DSP_2018_FOEHU - Lec 03 - Discrete-Time Signals and Systems
DSP_2018_FOEHU - Lec 02 - Sampling of Continuous Time Signals
SE2018_Lec 15_ Software Design

Recently uploaded (20)

PDF
Adobe Premiere Pro 2025 (v24.5.0.057) Crack free
PPTX
Odoo POS Development Services by CandidRoot Solutions
PPTX
history of c programming in notes for students .pptx
PDF
medical staffing services at VALiNTRY
PPTX
Operating system designcfffgfgggggggvggggggggg
PDF
Wondershare Filmora 15 Crack With Activation Key [2025
PDF
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
PDF
Design an Analysis of Algorithms II-SECS-1021-03
PPTX
Reimagine Home Health with the Power of Agentic AI​
PDF
Design an Analysis of Algorithms I-SECS-1021-03
PDF
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
PPTX
Why Generative AI is the Future of Content, Code & Creativity?
PDF
Which alternative to Crystal Reports is best for small or large businesses.pdf
PDF
T3DD25 TYPO3 Content Blocks - Deep Dive by André Kraus
PDF
PTS Company Brochure 2025 (1).pdf.......
PDF
Upgrade and Innovation Strategies for SAP ERP Customers
PPTX
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
PPTX
L1 - Introduction to python Backend.pptx
PDF
Product Update: Alluxio AI 3.7 Now with Sub-Millisecond Latency
PPTX
Introduction to Artificial Intelligence
Adobe Premiere Pro 2025 (v24.5.0.057) Crack free
Odoo POS Development Services by CandidRoot Solutions
history of c programming in notes for students .pptx
medical staffing services at VALiNTRY
Operating system designcfffgfgggggggvggggggggg
Wondershare Filmora 15 Crack With Activation Key [2025
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
Design an Analysis of Algorithms II-SECS-1021-03
Reimagine Home Health with the Power of Agentic AI​
Design an Analysis of Algorithms I-SECS-1021-03
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
Why Generative AI is the Future of Content, Code & Creativity?
Which alternative to Crystal Reports is best for small or large businesses.pdf
T3DD25 TYPO3 Content Blocks - Deep Dive by André Kraus
PTS Company Brochure 2025 (1).pdf.......
Upgrade and Innovation Strategies for SAP ERP Customers
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
L1 - Introduction to python Backend.pptx
Product Update: Alluxio AI 3.7 Now with Sub-Millisecond Latency
Introduction to Artificial Intelligence

SE_Lec 06_Object Oriented Analysis and Design

  • 1. 1
  • 2. 2  System development refers to all activities that go into producing information system solution.  System development activities consist of system analysis, modeling, design, implementation, testing and maintenance.  Object-Oriented (OO) systems development is a way to develop software by building self-contained modules that can be more easily:  Replaced  Modified  and Reused.
  • 3. 3  A software system is a set of mechanism for performing certain action on certain data. Algorithm + Data structure = Program
  • 4. 4  The code is subdivided into modules  Each module is made of procedures and data structures  Procedures operate on data, e.g. modifying them  e.g. the “C” programming language  There is no strong connection between procedures  Every procedure may possibly access any data and modify it and data
  • 5. 5  OO approach is more like creating a lot of helpers that take on an active role, a spirit, that form a community whose interactions become the application.  Models the problem to be solved as a set of interacting objects, each carrying its own state and exhibiting its own behavior  By separating concerns, this approach has proved to be robust and useful to solve more complex programming problems.
  • 6. 6  The physical world is made of a set of objects that can interact  Each of them presents  An identity (objects can be recognized)  A state (objects remember their history)  A behavior (objects react to external stimuli in a predictable way)
  • 7. 7  Faster development,  Increased quality  Raising the level of abstraction.  It adapts to  Changing requirements  Easier to maintain  More robust  Promote greater design  Code reuse
  • 8. 8  Goals:  Define Objects and classes  Describe objects‘ methods, attributes and how objects respond to messages,  Define Polymorphism, Inheritance, data abstraction, encapsulation, and protocol,  Describe objects relationships,  Describe object persistence.  Understand meta-classes.
  • 9. 9  The term object was first formally utilized in the Similar language to simulate some aspect of reality.  An object is an entity.  It knows things (has attributes)  It does things (provides services or has methods)  Note:  Attributes or properties represented by data type and describe object‘s state (data)  Methods define objects behavior and specify the way in which an Object‘s data are manipulated.
  • 10. 10  It Knows things (attributes)  I am an Employee.  I know my name, social security number and my address.  Attributes  I am a Car.  I know my color,  manufacturer, cost,  owner and model.  It does things (methods)  I know how to compute my payroll.
  • 11. 11  In an object-oriented system, everything is an object: numbers, arrays, records, fields, files, forms, an invoice, etc.  An Object is anything, real or abstract, about which we store data and those methods that manipulate the data.  Conceptually, each object is responsible for itself.  A window object is responsible for things like opening, sizing, and closing itself.
  • 12. 12  When developing an O-O application, two basic questions always arise.  What objects does the application need?  What functionality should those objects have?
  • 13. 13  Simple Name (written as UpperCase-first Noun)  Path Name
  • 14. 14  Represent named properties of a UML class  UML class can have many attributes of different names  Attribute name is generally a short noun or a noun phrase written in lowerCase-first text  Attribute declaration may include visibility, type and initial value: +attributeName : type = initial-value
  • 15. 15  Represent named services provided by a UML class  UML class can have many operations of different names  Operation name is generally a short verb or a verb phrase written in lowerCase-first text  Operation may include visibility, parameters, and return type: +opName(param1 : type = initial_value) : return-type
  • 16. 16  Three levels of class, attribute and operation visibility: • private (-), available only to the current class • protected (#), available to the current and inherited classes • public (+), available to the current and other classes
  • 17. 17  Each class represents a set of objects that share the same attributes, operations, relationships, and semantics  For each of the class attributes, objects can have specific attribute values  For each of the class operations, objects may have different implementations
  • 18. 18  Represent a relation between a parent (a more abstract class) and a child (a more specific class)  Generally referred to as a “is-a-kind-of” relationship  Child objects may be used instead of parent objects since they share attributes and operations; the opposite is not true
  • 19. 19  An object-oriented system organizes classes into subclass-super hierarchy.  At the top of the hierarchy are the most general classes and at the bottom are the most specific  A subclass inherits all of the properties and methods (procedures) defined in its super class.
  • 20. 20  Inheritance is a relationship between classes where one class is the parent class of another (derived) class.  Inheritance allows classes to share and reuse behaviors and attributes.  The real advantage of inheritance is that we can build upon what we already have and,  Reuse what we already have.
  • 21. 21
  • 22. 22
  • 23. 23  OO systems permit a class to inherit from more than one superclass.
  • 24. 24  Information hiding is a principle of hiding internal data and procedures of an object.  By providing an interface to each object in such a way as to reveal as little as possible about its inner workings.  Encapsulation protects the data from corruption.
  • 25. 25  Objects perform operations in response to messages. For example, you may communicate with your computer by sending it a message from hand-help controller.
  • 26. 26  Consider a payroll program that processes employee records at a small manufacturing firm. This company has three types of employees:  Managers: Receive a regular salary.  Office Workers: Receive an hourly wage and are eligible for overtime after 40 hours.  Production Workers: Are paid according to a piece rate.
  • 27. 27  Structured Approach FOR EVERY EMPLOYEE DO BEGIN IF employee = manager THEN CALL computeManagerSalary IF employee = office worker THEN CALL computeOfficeWorkerSalary IF employee = production worker THEN CALL computeProductionWorkerSalary END
  • 29. 29  OO Approach FOR EVERY EMPLOYEE DO BEGIN employee computePayroll END
  • 30. 30  Polymorphism means that the same operation may behave differently on different classes.  Example: computePayroll
  • 31. 31  Link: model of logical or physical link between objects
  • 33. 33  Multiplicity: constraint on the min/max number of links connected to an object
  • 34. 34  The concept of association represents relationships between objects and classes. For example a pilot can fly planes  Association can be binary, between two classes, or n- ary, among more than two classes  Can include association name, direction, role names, multiplicity, and aggregation type
  • 35. 35  Represent a specific, whole/part structural relationship between class objects  Composition [is entirely made of]: (closed diamond) represents exclusive relationship between two class objects (e.g., a faculty cannot exist without nor be a part of more than one university)  Aggregation [is part of]: (open diamond) represents nonexclusive relationship between two class objects (e.g., a student is a part of one or more faculties)
  • 36. 36  Objects have a lifetime. An object can persist beyond application session boundaries, during which the object is stored in a file or a database, in some file or database form.
  • 37. 37  Everything is an object.  How about a class?  Is a class an object?  Yes, a class is an object! So, if it is an object, it must belong to a class.  Indeed, class belongs to a class called a Meta-Class or a class' class.  Meta-class used by the compiler. For example, the meta-classes handle messages to classes, such as constructors and "new.“
  • 38. 38