Объектно-ориентированные системы (ООС), к которым относят все методологии, инструментарии и языки программирования, которые поддерживают технологию объектно-ориентированного программирования, пользуются огромным успехом в мире.
Такая ситуация обусловлена преимуществами ООС:
Пакет Sketchpad (разработчик И.Сазерленд) является представителем одной из первых объектно-ориентированных систем. Sketchpad – универсальная графическая система, целью которой является интерактивное создание и редактирование изображений на графическом дисплее. Геометрические преобразования приводили к экземпляру геометрического объекта через применение к определениям мастера (класса) объектов. Несмотря на то, что концепция ООС в 1963 г. еще не была сформулирована, интерфейс пользователя, разработанный Сазерлендом, уже обладал многими свойствами, которые объединяют его с подобными системами.
Система Smalltalk, разработанная Исследовательским центром в Пало-Альто (PARC) корпорации Xerox, довольно часто вызывает ассоциации с объектно-ориентированным подходом. Система основывается на понятиях классов, сообщений и объектов, которые используются для создания интерфейса пользователя и среды программирования. Smalltalk отличает от других ООС то, что она не использует какую-либо общепринятую типизацию и процедурные конструкции, что могло бы привести к нарушению строгости передачи сообщений и применения объектов. Единственная конструкция в данной системе – это объект, управляющий даже программным потоком. У каждого класса есть методы, которые используются для обработки сообщений, создаваемых внутри объектов. Система допускает определение нового класса через добавление методов и данных к другому классу, который называют суперклассом.
Система Flavor, разработанная компанией Symbolic, является примером внедрения объектов в диалект Лиспа. Системой используется множественное наследование с допуском неиерархических комбинаций классов, которые называются объектами. При создании нового объекта им наследуются атрибуты множества объектов. Методы управления сообщениями являются комбинацией методов других объектов. В системе присутствует возможность возникновения конфликта при обработке одного и того же сообщения разными способами двумя комбинированными объектами. В таком случае концепция объекта заранее определенным способом разрешает появившийся конфликт.