ВУЗ:
Составители:
Рубрика:
Несмотря на отмеченные недостатки, Буч утверждает, что выгоды
от использования ООП более весомы. Кроме того, повышение произво-
дительности за счёт лучшей организации ООП-кода, по его словам,
в некоторых случаях компенсирует дополнительные накладные расходы
на организацию функционирования программы. Можно также заметить,
что многие эффекты снижения производительности могут сглаживаться
или даже полностью устраняться за счёт качественной оптимизации
кода компилятором. Например, упомянутое выше снижение скорости
доступа к полям класса из-за использования методов доступа устраняет-
ся, если компилятор вместо вызова метода доступа использует инлайн-
подстановку (современные компиляторы делают это вполне уверенно).
3.6.8. Критика ООП
Несмотря на отдельные критические замечания в адрес ООП, в на-
стоящее время именно эта парадигма используется в подавляющем
большинстве промышленных проектов. Однако, нельзя считать, что
ООП является наилучшей из методик программирования во всех случа-
ях [6].
Обычно сравнивают объектное и процедурное программирование:
• Процедурное программирование лучше подходит для случаев,
когда важны быстродействие и используемые программой ресурсы, но
требует большего времени для разработки.
• Объектное – когда важна управляемость проекта и его модифици-
руемость, а также скорость разработки.
Критические высказывания в адрес ООП:
• Исследование Thomas E. Potok, Mladen Vouk и Andy Rindos [13]
показало отсутствие значимой разницы в продуктивности разработки
программного обеспечения между ООП и процедурным подходом.
• Кристофер Дэйт указывает на невозможность сравнения ООП
и других технологий во многом из-за отсутствия строгого и общепри-
знанного определения ООП (C. J. Date, Introduction to Database Systems,
6th-ed., Page 650).
• Александр Степанов, в одном из своих интервью, указывал на то,
что ООП «методологически неправильно» и что «… ООП практически
такая же мистификация как и искусственный интеллект…» [2].
• Фредерик Брукс (Frederick P. Brooks, Jr.) в своей статье «No Silver
Bullet. Essence and Accidents of Software Engineering» (Computer
Magazine; April 1987) указывает на то, что наиболее сложной частью со-
здания программного обеспечения является « … спецификация, дизайн
и тестирование концептуальных конструкций, а отнюдь не работа по
выражению этих концептуальных конструкций…». ООП (наряду с таки-
94
Страницы
- « первая
- ‹ предыдущая
- …
- 92
- 93
- 94
- 95
- 96
- …
- следующая ›
- последняя »
