Парадигма объектно-ориентированного программирования

Парадигма объектно-ориентированного программирования


Объектно-ориентированное программирование (ООП) – методология программирования, основанная на представлении программы в виде совокупности объектов (объект в понимании ООП, это сущность, подпрограмма которая выполняет ряд задач и общается с другими объектами), каждый из которых является экземпляром определенного класса, а классы образуют иерархию наследования[1].

 

Одна из проблем это отсутствие строгого и общепризнанного определения, об этом упоминал Christopher J. Date(один из крупнейших специалистов в области баз данных).

 

Если посмотреть на идеи Smalltalk’а[3], столкнемся с словами: “Все есть объект”. Кроме переменных, и пакетов, и примитивов. Числа и классы тоже не совсем объекты, и так далее. Очевидно, “все есть объект” нельзя назвать основной парадигмой.

 

Peter Wegner однажды предположил, что основой объектно-ориентированного программирования являются объекты, классы и наследование[2]. Однако, каждый язык программирования поддерживает их по-разному, или даже не поддерживает по умолчанию некоторые из них. Ясно, что это тоже не парадигма ООП.

 

Одни утверждают, что ООП — это Инкапсуляция, Абстракция и Полиморфизм. Разные источники говорят, что это всего лишь разные слова для описания одинаковой идеи. А другие отмечают, что это три фундаментально разные концепции.

 

Проанализировав другие парадигмы решающие задачи определённым образом, можно предположить основную идею ООП:

  • Процедурное программирование часто описывается как программы = данные + алгоритмы.
  • Логическое программирование гласит:

программы = факты + правила.

  • Функциональное программирование:

 программы = функции + функции.

 

Что наводит на мысль, что ООП означает: программы = объекты + сообщения. Таким образом, теряется главное. А главное в том, что ООП – это не парадигма, как, например, процедурное, логическое или функциональное программирование. Вместо этого в соответствии с ООП: “для каждой отдельной задачи вы должны разработать свою собственную парадигму”. Другими словами, парадигма объектно-ориентированного проектирования такова: “Программирование — это моделирование”.

 

Евгений Максимец, Кафедра КИТАМ ХНУРЭ 2016


Эндорфин и морфин Эндорфин и морфин

Физиолог Вячеслав Дубынин о действии морфина на мозг, опасности зависимости от опиоидов и эндорфиновом торможении

Подробнее
Психология самоубийства Психология самоубийства

Психолог Илья Плужников о биопсихосоциальном феномене суицида, аномии и синдроме юного Вертера

Подробнее
mode_edit
Случайная цитата

Единственно, что не вернется, — это молодость и возможность попутешествовать по белому свету.