Аспект (компьютерное программирование) - Aspect (computer programming)

An аспект программы - это особенность связан со многими другими частями программы, но не связан с основной функцией программы. Аспект поперечные разрезы программы основные проблемы, поэтому нарушая его разделение проблем который пытается инкапсулировать несвязанные функции. Например, протоколирование код может пересекать многие модули, но аспект ведения журнала должен быть отделен от функциональных проблем модуля, который он пересекает. Изоляция таких аспектов, как ведение журнала и упорство из бизнес-логика цель аспектно-ориентированная разработка программного обеспечения (AOSD), из которых аспектно-ориентированное программирование (АОП) парадигма является наиболее широко используемым.[1]

Аспектно-ориентированность не ограничивается программированием, так как она полезна для выявления, анализа, отслеживания и модульности проблем (например, Предварительный просмотр[требуется разъяснение ]) посредством выявления, спецификации и проектирования требований. Аспекты могут быть многомерными, позволяя как функциональному, так и нефункциональному поведению пересекать любые другие проблемы, вместо простого сопоставления нефункциональных проблем с функциональными требованиями.[нужна цитата ].

Один из подходов к аспектно-ориентированной разработке программного обеспечения состоит в том, что каждая основная функция программы, основная задача (бизнес-логика) или сквозная проблема (дополнительные функции) является аспектом, и ткачество их вместе (процесс, также называемый композицией), в итоге получается единое целое из отдельных аспектов. Этот подход известен как чистое аспектное программирование, но чаще используются гибридные подходы, возможно, из-за меньшего сдвига парадигмы.[требуется разъяснение ] между объектно-ориентированным и аспектно-ориентированным программированием. Аналогичная ситуация наблюдается с ранними аспектами разработки программного обеспечения (например, требований), когда традиционные методы улучшаются для аспектно-ориентированного подхода и предлагаются новые модели. Нефункциональные проблемы (например, безопасность) могут пересекать функциональные проблемы (например, дверь должна присутствовать). Функциональные проблемы могут пересекать нефункциональные или функциональные проблемы (например, потребность в дополнительных функциях вредит мобильности). Единый подход к представлению и композиции, аналогичный чистому подходу в АОП, называется многомерным представлением.

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

Смотрите также

Рекомендации

  1. ^ Авайс Рашид (2004). Аспектно-ориентированные системы баз данных. Springer. ISBN  3-540-00948-5.