Основные понятия в ООП - PullRequest
       34

Основные понятия в ООП

24 голосов
/ 31 декабря 2008

Меня однажды спросили в интервью: «Каковы 3 основных понятия ООП?». Я ответил, сказав, что, по моему мнению, их было 4:

  • Наследование
  • Инкапсуляция
  • Абстракция
  • Полиморфизм

Был ли я прав?

Ответы [ 14 ]

0 голосов
/ 31 декабря 2008

3 основных понятия в ООП:

  • Позднее связывание
  • Повторное использование концептов (во всяком случае, в этом нет уверенности: повторное использование концепций; избегание повторной реализации даже самых простых концепций)
  • Абстракция
0 голосов
/ 31 декабря 2008

Эта [статья] [1] относится к трем столпам хорошего кода. Я обнаружил, что это отличная статья, в которой говорится, что инкапсуляция является «первым принципом» объектно-ориентированного проектирования.

«Первые» принципы - это фундаментальные, основополагающие принципы, из которых вытекает все остальное. Автор использует пример Золотого правила. Трудно научить детей всем тонкостям цивилизованного поведения, но если вы сможете заставить их понять (и, что более важно, практиковать) золотое правило обращения с другими так, как вы хотели бы, чтобы относились к вам, то они с большей вероятностью «получат» все юридические и моральные стандарты, которых мы придерживаемся ежедневно.

Итак, из этого следует, что если разработчик понимает инкапсуляцию как «Первый принцип» объектно-ориентированной разработки, все остальные принципы будут следовать в должное время.

Я не отношусь к содержанию автора справедливо, но я определенно призываю людей прочитать его.

По какой-то причине я не показываю гиперссылку как проходящую, поэтому вот URL: http://www.netobjectives.com/files/Encapsulation_First_Principle_Object_Oriented_Design.pdf

0 голосов
/ 31 декабря 2008

Это верно.

Если вы должны были предоставить только одну Абстракцию, то это, так или иначе, остальные три - просто Абстракция в действии .

0 голосов
/ 31 декабря 2008

Вероятно, последние три - это то, что они искали - можно сказать, что наследование является скорее механизмом, помогающим достичь других, которые являются целями более высокого уровня.

В любом случае, на самом деле нет правильного ответа, особенно если он ограничен «топ-3».

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...