IOC(Inversion Of Control) 제어의 역전
일반적인 Java 객체를 new로 생성하여 개발자가 관리 하는 것이 아닌 Spring Container에 모두 맡기는 것
즉, 개발자에서 -> 프레임워크로 제어의 객체 관리의 권함이 넘어 갔음 으로 ‘제어의 역전’ 이라고 함
DI(Dependency Injection) 의존성 주입
의존성으로부터 격리시켜 코드 테스트에 용이하다.
DI를 통하여, 불가능한 상황을 Mock와 같은 기술을 통하여, 안정적으로 테스트 가능하다.
코드를 확장하거나 변경 할 때 영향을 최소화 한다.
순환참조를 막을 수 있다.
AOP(Aspect Oriented Programming) 관점지향 프로그램
로직을 기준으로 핵심적인 관점, 부가적인 관점으로 나누어서 보고 그 관점을 기준으로 각각 모듈화
스프링 어플리케이션은 대부분 특별한 경우를 제외 하고는 MVC 웹 어플리케이션에서는
Web Layer , Business Layer , Data Layer 로 정의 (횡단 관심)
Web Layer : REST API를 제공 , Client 중심의 로직 적용
Business Layer : 내부 정책에 따른 logic를 개발하며 , 주로 해당 부분 개발
Data Layer : 데이터 베이스 및 외부와의 연동
'Spring' 카테고리의 다른 글
| MVC 패턴 (0) | 2022.12.28 |
|---|---|
| QUERYDSL 이란 (0) | 2022.12.20 |
| WebClient (0) | 2022.12.20 |
| annotation (0) | 2022.12.20 |
| Singleton (0) | 2022.12.20 |
댓글