Объектно-ориентированное программирование

Объектно-ориентированного программирование – это программирование, при котором применяется методология, подразумевающая объектную декомпозицию предметной области. Объект – это любая физическая или абстрактная четко идентифицируемая сущность. Объект – это общефилософское понятие, которое изучалось философами на протяжении длительного времени.

Объекты характеризуются атрибутами. Так атрибутами автомобиля являются максимальная скорость, мощность двигателя, цвет кузова и т. д. Помимо атрибутов объекты обладают некоторыми функциональными возможностями, которые в объектно-ориентированном программировании называют операциями или методами. Так автомобиль может ездить, корабль – плавать, компьютер – производить вычисления. Таким образом, объект инкапсулирует атрибуты и методы, скрывая от других объектов взаимодействующих с ним и использующих его функциональность, свою реализацию. Инкапсуляция или сокрытие реализации является базовым свойством ООП.

Объект – это экземпляр некоторого класса объектов или просто класса. Таким образом, класс – это абстрактное понятие. Отношение класса и объекта примерно такое же, как платоновские идеи и объекты реального мира.

Классы могут быть связаны друг с другом различными отношениями. Одним из основных таких отношений является отношение класс – подкласс, известный в объектно-ориентированном программировании как наследование. При наследовании все атрибуты и методы родительского класса наследуются классом-потомком.

При объектно-ориентированном анализе и проектирование применяется унифицированный язык моделирования – UML, позволяющий графически представить создаваемую программную систему. Существуют также различные модели процессов создания программного обеспечения, наиболее известными из которых являются унифицированный процесс разработки программного обеспечения (UP/RUP) и методология экстремального программирования – XP. Известно также и много других методологий, например, ICONIX.

Типичными языками, поддерживающими парадигму объектно-ориентированного программирования, являются C++, C# и Java. Помимо объектно-ориентированных бываю объектные (поддерживают инкапсуляцию, но не поддерживают, либо поддерживают не полностью наследование и полиморфизм) и объектно-базированные языки программирования (не имеют механизмов создания пользовательских объектов, но позволяют использовать имеющиеся объекты).

На данный момент, методология объектно-ориентированного программирования, является основной методологией создания программный систем, в том числе при реализации систем автоматизации структурно-параметрического синтеза.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: