Общая проблема

редактировать

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

Например, если вы пишете приложение для обработки медицинских записей, индексация таких записей является основной задачей, а ведение журнала истории изменений в базе данных записей, базе данных пользователей или системе аутентификации может быть сквозной проблемой, поскольку они взаимодействуют с большим количеством частей программы.

Содержание
  • 1 Предпосылки
  • 2 Примеры
  • 3 См. Также
  • 4 Ссылки
  • 5 Библиография
  • 6 Дополнительная литература
  • 7 Внешние ссылки
Предпосылки

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

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

Аспектно-ориентированное программирование стремится инкапсулировать сквозные проблемы в аспектах для сохранения модульности. Это позволяет полностью изолировать и повторно использовать код для решения сквозной проблемы. Основываясь на комплексных проблемах, разработка программного обеспечения может включать в себя модульность и упрощенное обслуживание.

Примеры

Примеры проблем, которые склонны к быть сквозными:

См. также
Ссылки
Библиография
  • Kicz эль, Грегор; Лэмпинг, Джон; Мендекар, Анураг; Маэда, Джон; Лопес, Кристина; Лонтье, Жан-Марк; Ирвин (1997). «Аспектно-ориентированное программирование». Материалы 11-й Европейской конференции по объектно-ориентированному программированию (ECOOP 1997): 220–242. CS1 maint: ref = harv (ссылка )
  • патент США 6467086, Kiczales et. Al. " Аспектно-ориентированное программирование ", выпущено 15 октября 2002 г.
  • Ли, Гарри; Кришнамурти, Шрирам; Фислер, Кэти (2002)." Проверка сквозных функций как открытых систем ". Программное обеспечение ACM SIGSOFT Технические примечания. 27 (6): 89–98. CiteSeerX 10.1.1.8.9445. doi : 10.1145 / 605466.605481. CS1 maint: ref = harv (ссылка )
  • Парнас, Дэвид Л. (декабрь 1972 г.). «О критериях, которые будут использоваться при разделении систем на модули». Связь ACM. 15(12): 1053–1058. CiteSeerX 10.1.1.90.8963. doi : 10.1145 / 361598.361623.
  • Тарр, Пери; Ошер, Гарольд; Харрисон, Уильям; Саттон, Стэнли М., мл. (1999). N Степени разделения: многомерное разделение проблем. Труды 21-й Международной конференции по разработке программного обеспечения. Лос-Анджелес, Калифорния Орния, США: IEEE Computer Society Press. С. 107–119. CiteSeerX 10.1.1.89.1641. doi : 10.1109 / ICSE.1999.841000. ISBN 978-1581130744.
Дополнительная литература
  • Ладдад, Р. (2003): AspectJ в действии, Практическое аспектно-ориентированное программирование, Manning Publications Co.
Внешние ссылки
Последняя правка сделана 2021-05-16 09:39:21
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте