Другие языки программирования и технологии

Для чего выдумали объектно-ориентированное программирование? Какие недостатки оно устраняет?

В функциональном программировании мы данные группировали в структуры, чтобы потом как с объектом работать. Это упрощало работу и было первым шагом к объекту. Недостатки в том, что функции которые могли работать с данной структурой и сами данные были в разных местах, любая функция могли поменять эти данные, что совсем не похоже на целостный объект у которого есть то, что внутри и есть наружная поверхность взаимодействующая с внешним миром. С введением класса он стал более похож на объект, его внутренности в виде данных и его функционал, что там внутри, может быть скрыто, а интерфейс или его кожа (другие функции) видно с внешней стороны.
Это так своими словами, а так есть большие описания в нете и в книгах:
http:// codingcraft. ru/oop. php
http:// www.uni-vologda.ac. ru/oberon/infoart/plus&min. htm
И тд и тп
Сергей Дубров
Сергей Дубров
71 630
Лучший ответ
Создает сквозную структуру данных и кода, устраняя таким образом "макароны" процедурного программирования.
Плюс модель данных более соответствует моделям реального мира.
ТВ
Тима Валиев
75 520
От любви к искусству! Нарушение целостности данных в процессе написания и выполнения программы.
Сергей Ковалёв
Сергей Ковалёв
69 655
Оно позволяет удобно расположить и инструменты, и данные.
Если, например, все библиотечные функции свалить в одну кучу, то всплывающая подсказка выдаст вам 3 метровый список, и ищите там нужную. А так, написали имя класса или объекта - и получаете только его методы.
И не надо объяснять методам, что где и как в структуре данных. они это знают.
Алексей Ломаев
Алексей Ломаев
50 818
Для уменьшения времени написания программ.
Оно помогает писать код, более похожий на образ мыслей человека. Ближе к естественному языку. Если в коде больше 1000 строк - скорее всего, с качественным ООП его будет легче понять.
ЕП
Егор Попов
95 230
Устраняет дублирование кода, например. Повышает заменяемость компонентов программы, соответственно, упрощает доработку и переработку.

Похожие вопросы