Object-oriented design
designobject orientedobject-orientedobject oriented designdesign patternsobject modellingobject-oriented development methodologiesObject-oriented Software Construction
Object-oriented design is the process of planning a system of interacting objects for the purpose of solving a software problem.wikipedia
85 Related Articles
Information hiding
data hidingencapsulationencapsulated
In his book on object-oriented design, Grady Booch defined encapsulation as "the process of compartmentalizing the elements of an abstraction that constitute its structure and behavior; encapsulation serves to separate the contractual interface of an abstraction and its implementation."
GRASP (object-oriented design)
GRASPGRASP information expertGRASP principles
General Responsibility Assignment Software Patterns (or Principles), abbreviated GRASP, consist of guidelines for assigning responsibility to classes and objects in object-oriented design.
IDEF4
IDEF4, or Integrated DEFinition for Object-Oriented Design, is an object-oriented design modeling language for the design of component-based client/server systems.






Composition over inheritance
Composite reuse principlecompositioncomposition instead of inheritance
Object-oriented programming
object-orientedobject orientedobject-oriented programming language
Object-oriented design is the process of planning a system of interacting objects for the purpose of solving a software problem.


Software design
designdesignedsoftware designer
It is one approach to software design.
Object (computer science)
objectobjectsdata object
An object contains encapsulated data and procedures grouped together to represent an entity. Object-oriented design is the discipline of defining the objects and their interactions to solve a problem that was identified and documented during object-oriented analysis.
Encapsulation (computer programming)
encapsulationencapsulateencapsulated
An object contains encapsulated data and procedures grouped together to represent an entity.
Object-oriented analysis and design
object-oriented analysisobject-orientedAnalysis and Design
Object-oriented design is the discipline of defining the objects and their interactions to solve a problem that was identified and documented during object-oriented analysis.

Class-based programming
class-basedclass definedclass-based inheritance
What follows is a description of the class-based subset of object-oriented design, which does not include object prototype-based approaches where objects are not typically obtained by instantiating classes but by cloning other (prototype) objects.
Prototype-based programming
prototype-basedprototypeprototypes
What follows is a description of the class-based subset of object-oriented design, which does not include object prototype-based approaches where objects are not typically obtained by instantiating classes but by cloning other (prototype) objects.
Conceptual model (computer science)
conceptual modelconceptual modelingModeling
Problem domain
domainproblem spaceapplication domain
Concurrency (computer science)
concurrencyconcurrentconcurrently

Use case
use casesuse-caseUse case diagram
Scenario (computing)
scenariosScenariousage scenarios
Look and feel
look-and-feelappearancelook & feel
Object database
object-oriented databaseobject-oriented databasesobject persistence
Object-relational mapping
ORMobject-relational mapperObject Relational Mapping