728x90
스프링 프레임워크의 목표
- 엔터프라이즈 서비스를 보다 쉽게 구축할 수 있다. // 경량, 호환성(lib), 메시지 전송 등이 원할하기 때문이다.
- 의존성 주입을 통한 유연한 프레임워크 구현할 수 있다.
- "클래스, 상속, 다형성" 자바의 특징 + Springbean.xml : 뉴연산자 X, 메모리에 올려진 참조형으로 사용 beans 안에 bean 태그 알아서 참조해서 사용할 수 있게 해주겠다, xml 의존해라
- 관점지향 프로그래밍(Aspect oriented Programming)지원
// 'AOP 공통영역/ 핵심영역' 에노테이션 제공 e.g. before/ after , 한국에서는 AOP 대신 DI를 더 사용한다.
- Application의 완전한 이식성을 제공한다.
- 반복적인 코드 사용을 줄인다. // 동적바인딩 코드를 <bean>의 속성으로 대체하기 때문이다.
스프링의 특징 중 DI & IOC
Spring Core 중
- DI (Dependency Injection) : 의존성 주입
: 스프링이 다른 프레임워크와 차별화되어 제공하는 의존 관계 주입으로 객체를 직접 생성하는 방식이 아니라, 외부에서 생성한 후 주입 시켜주는 방식이다.
- IOC(Invercion Of Control) : 제어 역행화
: 제어가 일반적인 흐름을 따르지 않고, 반대로 흘러간다는 뜻으로 프로그램이 가지고 있던 구현 객체에 대한 정보를 외부, 프레임워크에서 관리한다. 최근에는 DI라는 용어를 더 많이 사용한다.
DI & IOC 활용을 통해 의존성을 역전시켜 객체 간의 결합도는 줄이고, 유연한 코드를 작성해 코드 중복을 줄이고, 유지 보수를 편하게 할 수 있다는 특징이 있다.
728x90
'Spring' 카테고리의 다른 글
[스프링부트]SpringBoot에서 Thymeleaf 기본 설정 (0) | 2021.11.05 |
---|---|
[스프링부트] Spring VS SpringBoot resources 파일 위치 차이 (0) | 2021.11.04 |
Spring 컴포넌트스캔 component-scan (0) | 2021.10.21 |
[Spring] 스프링 컨테이너의 특징과 종류 (0) | 2021.10.20 |
[spring] 스프링 프레임워크의 개념과 구조 (0) | 2021.10.18 |
댓글