Аспектно-ориентирано програмиране: Разлика между версии
Изтрито е съдържание Добавено е съдържание
Ред 71:
== Модели на съединени точки ==
Компонентът ''
МСТ определят три неща:
# Кога
# Поинткътс се нарича начина за определяне (или количествено определяне) на съединени точки. Поинткътс определят дали дадена съединени точка съвпада. Най-полезните поинткътс програмни езици използват подобен синтаксис на базовия език за програмиране (например
# Средство да се зададе на кода да тръгне по съединени точка. [[:bg:AspectJ|AspectJ]] нарича това
Моделите на съединени точки могат да бъдат сравнени на базата на изложените съединени точки, по какъв начин те са специфицирани, позволените им операции, и структурните подобрения, които могат да бъдат изразени.
==== Модел на съединени точки на AspectJ ====
''Главна статия: [[:bg:AspectJ|AspectJ]]''
* Съединените точки в [[:bg:AspectJ|AspectJ]] включват извикването на метод или конструкция или изпълнението, инициализирането на клас или обект, достъпа до поле за четене и писане, обработка на изключения и тн. Те не включват цикли, супер извиквания, хвърляне на клаузи, множество изявления
* Съединените точки са определят чрез комбинирането на обозначители на примитивни съединени точки (ОПСТ).
„Типова“ ОПСТ съвпада със съединена точка от определен тип (например изпълнението на метод) и обикновено взима за вход сигнатура като при Джава. Подобна поинткът би изглеждала така:
Ред 96:
</source>
Този поинткът съвпада със съединена точка на метод execution, ако името на метода започва със „set“ и this е инстанция на тип Point в пакет com.company. Moже да бъде реферирана като се използва името "set()".
*
after() : set() {
Ред 105:
==== Други потенциални модели на съединени точки ====
Има и други типове МСТ. Всички езици с
* Съединените точки за всички елементи от модела.
* Поинткътите са булеви изрази, комбиниращи елементите на модела.
|