Итак, вот вопрос: каковы преимущества и недостатки использования аспектно-ориентированной парадигмы программирования.
Мои преимущества и недостатки пока:
Преимущества:
- Дополняет объектную ориентацию.
- Модулирует сквозные вопросы, улучшающие удобство обслуживания и понятность кода.
Недостаток:
- Не самая легкая для понимания концепция - не так хорошо документирована, как ОО
- ОО идет достаточно далеко в разделении проблем ...
Кто-нибудь хотел бы оспорить любой из них / добавить свои собственные?
Большое спасибо, J
learning
self-improvement
JHarley1
источник
источник
Ответы:
С точки зрения программиста, девизом которого является «Keep It Simple Stupid», оценка использования таких моделей опасна. За то, что он пытается достичь, он делает программу гораздо более трудной для понимания и, следовательно, легче разбить.
Гениальность хорошего программирования заключается в его простоте. Сложные программы могут работать, но это кошмары, когда речь идет об обслуживании, и если учесть, что 2/3 времени, затрачиваемого программистом, тратится на исправление ошибок в программах, в конечном итоге это не окупается.
источник
Распределение функциональности вне места действия увеличивает сложность и проблемы на расстоянии.
Я считаю, что такие подходы к проектированию должны развиваться, потому что система требует этого для чистой работы, а не для разработки с самого начала.
источник
Дополнительные преимущества (не все)
Недостатки
источник
Недостаток: плохая поддержка цепочки инструментов: - отладчик и профилировщик могут не знать о «аспектно-ориентированном программировании», по этой причине они могут работать с кодом, как если бы все аспекты были заменены процедурным кодом.
источник