자바 애플리케이션 개발에 사용되는 프레임워크.
애플리케이션 바탕이 되는 틀, 공통 프로그래밍 모델, 기술 API 등을 제공한다.
스프링 컨테이너, 애플리케이션 컨텍스트라고 불리는 스프링 런타임 엔진을 제공한다.
설정정보를 참고로 해서 애플리케이션을 구성하는 오브젝트를 생성하고 관리한다.
스프링은 코드가 어떻게 작성돼야 하는지에 대한 기준도 제시한다.
흔히 스프링 삼각형이라 불리는 세가지 프로그래밍 모델을 지원한다.
오브젝트의 생명주기와 의존관계에 대한 프로그래밍 모델
유연하고 확장성이 뛰어난 코드를 만들 수 있게 도와주는 객체지향 설계 원칙과 디자인 패턴의 핵심 원리를 담고 있다.
스프링이 제공하는 기술, API, 컨테이너도 이 방식으로 작성되어 있다. 가장 중요한 기술이다.
환경이나 서버, 특정 기술에 종속 되지 않고 이식성이 뛰어난 유연한 애플리케이션을 만들 수 있게 해주는 프로그래밍 모델
기술, 환경에 종속되지 않도록 유연한 추상 계층을 두는 방법이다.
코드에 산재해 나타나는 부가적인 기능을 독립적으로 모듈화하는 프로그래밍 모델
깔끔한 코드를 유지할 수 있게 해준다. 협업하는 과정에서 정말 중요한 부분이다.
방대한 기술 API를 제공한다. 모두 스프링의 프로그래밍 모델에 따라 작성되어 있어, 이를 사용하는 것만으로도 스프링의 프로그래밍 모델을 코드에 자연스럽게 적용할 수 있다.
[토비의 스프링] 스프링 IoC 파헤치기 - 용어 완벽 정리 (0) | 2022.07.22 |
---|---|
[토비의 스프링] 스프링 IoC 파해치기 - 빈, 빈 팩토리, 애플리케이션 컨텍스트 (0) | 2022.07.20 |
[토비의 스프링] 스프링의 IoC 공부 전 꼭 알아야 하는 팩토리 (0) | 2022.07.19 |
[토비의 스프링] 객체지향적 리팩토링을 위한 첫번째 관문, 관심사의 분리 (0) | 2022.07.19 |
댓글 영역