Spring의 주요한 특성이 복잡한 애플리케이션에서 발생할 수 있는 어떤 문제점을 해결해줄 수 있는가?
접근법?
웹 프레임워크를 사용해야 하는 이유?
- 프레임워크는 프레임워크 제작자가 설계한 구조를 따라야 하기 때문에 자유롭고 유연한 개발에 한계가 있지만,
- 제로 베이스에서 구현하는 것보다 시간, 비용이 절약되어 생산성이 좋아지며,
- 프레임워크의 구조를 따르기 때문에 코드가 체계화므로 유지보수에 안정적 (개발자가 바뀌더라도 위험 부담을 줄일 수 있음)
웹 프레임워크들 중 Spring을 사용해야 하는 이유?
- Spring은 객체지향 설계 원칙과 디자인 패턴의 핵심 원리를 담고 있는 의존성 주입, IoC를 프레임워크의 근간으로 삼고 있음
- Spring은 MVC의 각 계층에서 필요한 주요 기능을 Spring에서 일관된 방식으로 사용하도록 하는 기능과 전략 클래스 등을 제공
- 서비스 추상화를 통해 환경이나 서버, 특정 기술에 종속되지 않고 이식성이 뛰어나면서 유연한 애플리케이션을 만들 수 있음
- 스프링의 모든 기술들은 Java EE(표준 자바 엔터프라이즈 플랫폼)에 기반
- 스프링의 주요한 가치
- 단순함
- 가장 단순한 객체지향적 개발 모델인 POJO 프로그래밍을 따름
- 유연성 및 확장성
- 유연성
- 다른 서드파티 프레임워크들과 접목되어 사용될 수 있음
- Spring은 특정 아키텍처에 제한되는 프레임워크가 아니며, Spring을 기반으로 한 프레임워크가 생성될 수 있음
의존성 주입, IoC Container