Последняя версия DataExpress 3 beta от 9 декабря 2018 года. Скачать. Энциклопедия DX. Форум на Develop-Soft

К основным принципам ООП относят: инкапсуляцию, наследование, полиморфизм.

Справочная информация, руководства, видеоматериалы от пользователей DataExpress.
Zenitchik
Интересующийся
Сообщения: 66
Зарегистрирован: Чт мар 08, 2018 1:07 am

К основным принципам ООП относят: инкапсуляцию, наследование, полиморфизм.

Сообщение Zenitchik » Вс апр 08, 2018 9:47 pm

К основным принципам ООП относят: инкапсуляцию, наследование, полиморфизм.


Слишком вольное обобщение.
Скажем, в VB6.0 есть классы и полиморфизм, но нет наследования.
В JavaScript - нет классов (с некоторых пор есть, но это сахар над прототипами), но есть наследование, вместо полиморфизма - утиная типизация, а инкапсуляция возможна только на замыканиях (и вообще говоря, не поощряется - принцип JS: хочешь, чтобы значение свойства не менялось - не меняй его).
Про Lua уж молчу...

Общие черты всех известных мне типов ООП это: хранение в переменных ссылок на объекты, а не самих объектов; наличие у объектов полей и методов.
При этом методы могут физически относиться к классу, к прототипу или к самому объекту - в зависимости от парадигмы языка программирования.

Аватара пользователя
admin
Разработчик
Сообщения: 3956
Зарегистрирован: Пн мар 14, 2016 11:32 am
Откуда: Ленинградская

Re: К основным принципам ООП относят: инкапсуляцию, наследование, полиморфизм.

Сообщение admin » Пн апр 09, 2018 8:10 am

В учебниках по Паскалю пишут именно о 3 принципах.

Zenitchik
Интересующийся
Сообщения: 66
Зарегистрирован: Чт мар 08, 2018 1:07 am

Re: К основным принципам ООП относят: инкапсуляцию, наследование, полиморфизм.

Сообщение Zenitchik » Пн апр 09, 2018 10:52 am

В учебниках по Си - тоже. Но я только что продемонстрировал, что они, мягко говоря, не универсальны.
Универсально понятие объекта у которого есть состояние (поля) и интерфейс (свойства, методы, события).
Кажется, универсально использование для объектных переменных ссылочного типа, но не рискну утверждать, что ни в одном языке не поступают иначе.