정보시스템감리사 시험공부 정리노트 with Gemini
관점지향 프로그래밍(Aspect-Oriented Programming, AOP)은 객체지향 프로그래밍(OOP)을 보완하여 소프트웨어의 복잡도를 낮추기 위해 등장한 패러다임.1. 등장 배경: OOP의 한계객체지향 프로그래밍(OOP)은 모듈화를 통해 재사용성을 높였지만, 특정 기능들이 여러 클래스에 걸쳐 중복되는 문제를 완전히 해결하지 못함.코드 중복 (Code Duplication) : 로깅(Logging), 보안(Security), 트랜잭션(Transaction) 처리와 같은 기능은 거의 모든 비즈니스 로직에 공통적으로 필요합니다. 이를 각 객체마다 작성하면 코드가 중복됩니다.흩어진 관심사 (Scattered Concerns) : 공통 기능이 여러 모듈에 흩어져 있어, 코드를 수정할 때 해당 기능이 포함..