We're sorry but this page doesn't work properly without JavaScript enabled. Please enable it to continue.
Feedback

Object Orientation Revisited. Simplicity and power with DCI.

Formal Metadata

Title
Object Orientation Revisited. Simplicity and power with DCI.
Title of Series
Number of Parts
110
Author
License
CC Attribution - NonCommercial - ShareAlike 3.0 Unported:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal and non-commercial purpose as long as the work is attributed to the author in the manner specified by the author or licensor and the work or content is shared also in adapted form only under the conditions of this
Identifiers
Publisher
Release Date
Language

Content Metadata

Subject Area
Genre
Abstract
Nygaard and Dahl invented Simula’s classes and objects to master complex problems. Alan Kay invented object orientation (OO) with its networks of communicating objects to facilitate simple and powerful mental models. His goal was to make computers and programming comprehensible to children of all ages. Mainstream programmers missed the importance of communication in Kay’s OO and misused the term. A better name for their approach is ‘class orientation’.I have extended Kay’s original OO with explicit concepts and code that specify how objects interact at runtime. With this new paradigm, Data-Context-Interaction (DCI), programmers reason about their code, new team members get quickly up to speed, maintainers lead a better and more productive life. The DCI Context is a new abstraction that supplements the ubiquitous class. While a class says everything about the inside of an object and nothing about the objects surrounding it, a DCI Context says everything about a network of communicating objects and nothing about their insides. The class is great for describing autonomous objects such as the domain objects in the Data part of DCI. The Context is great for describing how use cases are realized by networks of communicating objects. Communication is now a first-class citizen of programming.