Spring AOP — зачем нужно аспектное программирование

Spring AOP — зачем нужно аспектное программирование

Spring AOP — зачем нужно аспектное программирование

Кратко (слайд):

    AOP (Aspect Oriented Programming) — подход, позволяющий отделить сквозную функциональность (логирование, безопасность, транзакции и др.) от основной логики приложения.

    В Spring реализуется через аспекты (@Aspect), которые перехватывают выполнение методов.

    Пример: вместо того, чтобы вставлять System.out.println() во все методы, можно создать один аспект логирования, который автоматически выполнится до и после каждого вызова метода сервиса.

Подробно:

Когда приложение растет, в нем появляется множество повторяющихся действий:

    логирование начала и конца метода,

    проверка прав доступа,

    открытие/закрытие транзакций,

    измерение времени выполнения,

    аудит и безопасность.

Если писать это вручную в каждом классе, код становится громоздким и плохо читаемым.
Например:

public void saveUser(User user) {
    System.out.println("Start saveUser");
    repository.save(user);
    System.out.println("End saveUser");
}

Через неделю в проекте будет сотни таких повторов.
AOP решает это, позволяя описать эти действия один раз в отдельном классе и подключить их к нужным методам автоматически.
Автор: к.п.н., Румянцев Сергей Александрович, доцент Финансового университета при Правительстве РФ; доцент ОЧУВО Международного инновационного университета; Консалтинг, управление разработкой ПО; системный и бизнес анализ; менеджмент; аналитиз данных; управление ИТ. Телефон для связи +79269444818 (мессенджеры)   Короткая ссылка:
Spring AOP — зачем нужно аспектное программирование

Spring AOP — зачем нужно аспектное программирование

Кратко (слайд):

    AOP (Aspect Oriented Programming) — подход, позволяющий отделить сквозную функциональность (логирование, безопасность, транзакции и др.) от основной логики приложения.

    В Spring реализуется через аспекты (@Aspect), которые перехватывают выполнение методов.

    Пример: вместо того, чтобы вставлять System.out.println() во все методы, можно создать один аспект логирования, который автоматически выполнится до и после каждого вызова метода сервиса.

Подробно:

Когда приложение растет, в нем появляется множество повторяющихся действий:

    логирование начала и конца метода,

    проверка прав доступа,

    открытие/закрытие транзакций,

    измерение времени выполнения,

    аудит и безопасность.

Если писать это вручную в каждом классе, код становится громоздким и плохо читаемым.
Например:

public void saveUser(User user) {
    System.out.println("Start saveUser");
    repository.save(user);
    System.out.println("End saveUser");
}

Через неделю в проекте будет сотни таких повторов.
AOP решает это, позволяя описать эти действия один раз в отдельном классе и подключить их к нужным методам автоматически.
https://webprogr.ru/~qrxTk
Короткая ссылка на новость:https://webprogr.ru/~qrxTk


Последние новости

Spring AOP — зачем нужно аспектное программирование

Spring AOP — зачем нужно аспектное программирование

Spring AOP — зачем нужно аспектное программирование

Кратко (слайд):

    AOP (Aspect Oriented Programming) — подход, позволяющий отделить сквозную функциональность (логирование, безопасность, транзакции и др.) от основной логики приложения.

    В Spring реализуется через аспекты (@Aspect), которые перехватывают выполнение методов.

    Пример: вместо того, чтобы вставлять System.out.println() во все методы, можно создать один аспект логирования, который автоматически выполнится до и после каждого вызова метода сервиса.

Подробно:

Когда приложение растет, в нем появляется множество повторяющихся действий:

    логирование начала и конца метода,

    проверка прав доступа,

    открытие/закрытие транзакций,

    измерение времени выполнения,

    аудит и безопасность.

Если писать это вручную в каждом классе, код становится громоздким и плохо читаемым.
Например:

public void saveUser(User user) {
    System.out.println("Start saveUser");
    repository.save(user);
    System.out.println("End saveUser");
}

Через неделю в проекте будет сотни таких повторов.
AOP решает это, позволяя описать эти действия один раз в отдельном классе и подключить их к нужным методам автоматически.
Рейтинг@Mail.ru