목차
✅ 1.1 왜 프레임워크를 써야 하는가?
- 애플리케이션의 핵심은 비즈니스 로직. 나머지는 반복되는 기술적 작업(보안, 로깅, 트랜잭션 등)이다.
- 프레임워크는 이 "반복적이고 귀찮은 일"을 대신해주는 전략 무기다.
🔧 비유: 가구를 만들 때, 설계도와 도구가 이미 준비되어 있는 ‘IKEA 가구 조립 키트’ 같은 것.
Spring은 바로 그 키트. 네가 할 일은 필요한 부품을 골라 조립하는 것뿐.
✅ 1.2 스프링 생태계의 구성요소
Spring은 단순 프레임워크가 아니다. 전체 전투 유닛을 갖춘 생태계다.
- Spring Core: 빈 컨테이너, DI, AOP, SpEL 등 핵심 기능
- Spring Data Access: JDBC, 트랜잭션, ORM 지원
- Spring MVC: 웹 애플리케이션 요청 처리
- Spring Boot: 설정 자동화, 스타터 의존성
- Spring Test: 단위/통합 테스트 지원
- 🔧 기타: Spring Security, Cloud, Batch 등도 생태계 포함
📌 핵심: Spring Core가 태양이라면, 나머지는 위성을 도는 구성 요소들이다.
✅ 1.3 실전 사용 시나리오
❗ Spring은 "웹 백엔드 전용"이 아니다. 실전에서는 다음과 같이 사용된다:
- 백엔드 앱 개발
- REST API, DB 연동, 트랜잭션 관리, 보안 적용, 메시지 브로커 연동 등
- → Spring이 가진 모든 기능을 총동원하는 전형적 용도
- 자동화 테스트 프레임워크 개발
- Cucumber, Selenium 등의 테스트 도구와 결합해 테스트 인프라 구현
- → DI와 컨텍스트 관리를 통해 유지보수성과 확장성을 확보
- 데스크탑 애플리케이션 개발
- Spring은 UI 프레임워크는 없지만, 로직 계층 관리에 Spring IoC, AOP 적용 가능
- 모바일 앱 개발 (Spring for Android)
- REST 클라이언트 제공 (거의 안 씀. 참고용)
✅ 1.4 프레임워크를 쓰지 말아야 할 때
- 초소형 앱 (서버리스 포함) → 빠른 시작 시간, 작은 사이즈가 중요하면 Spring은 과하다
- 보안상 오픈소스 금지 환경 → 자체 구현이 필요
- 프레임워크가 오히려 개발을 방해할 때 → 지나친 커스터마이징은 개발 속도 저하
- 이미 잘 돌아가는 시스템을 억지로 바꾸려 할 때
🔥 교훈: 프레임워크는 만능이 아니다. 상황에 맞는 전략 선택이 핵심이다.
✅ 1.5 이 책에서 무엇을 배우게 되는가
- 스프링 컨텍스트/빈 등록
- DI와 AOP의 원리와 활용
- Spring Boot로 웹앱 구현
- REST API 구현 및 데이터 연동
- Spring Data를 활용한 DB 처리
- Spring 테스트 전략
💣 이 장의 핵심 교훈 요약

'프레임워크 > Spring' 카테고리의 다른 글
Spring Context: Wiring Beans (0) | 2025.05.01 |
---|---|
Spring Context: Defining Beans (0) | 2025.05.01 |
@Controller VS @RestController (0) | 2025.03.26 |
REST API (0) | 2025.03.26 |
의존, 의존성 주입(DI) (0) | 2025.03.25 |
✅ 1.1 왜 프레임워크를 써야 하는가?
- 애플리케이션의 핵심은 비즈니스 로직. 나머지는 반복되는 기술적 작업(보안, 로깅, 트랜잭션 등)이다.
- 프레임워크는 이 "반복적이고 귀찮은 일"을 대신해주는 전략 무기다.
🔧 비유: 가구를 만들 때, 설계도와 도구가 이미 준비되어 있는 ‘IKEA 가구 조립 키트’ 같은 것.
Spring은 바로 그 키트. 네가 할 일은 필요한 부품을 골라 조립하는 것뿐.
✅ 1.2 스프링 생태계의 구성요소
Spring은 단순 프레임워크가 아니다. 전체 전투 유닛을 갖춘 생태계다.
- Spring Core: 빈 컨테이너, DI, AOP, SpEL 등 핵심 기능
- Spring Data Access: JDBC, 트랜잭션, ORM 지원
- Spring MVC: 웹 애플리케이션 요청 처리
- Spring Boot: 설정 자동화, 스타터 의존성
- Spring Test: 단위/통합 테스트 지원
- 🔧 기타: Spring Security, Cloud, Batch 등도 생태계 포함
📌 핵심: Spring Core가 태양이라면, 나머지는 위성을 도는 구성 요소들이다.
✅ 1.3 실전 사용 시나리오
❗ Spring은 "웹 백엔드 전용"이 아니다. 실전에서는 다음과 같이 사용된다:
- 백엔드 앱 개발
- REST API, DB 연동, 트랜잭션 관리, 보안 적용, 메시지 브로커 연동 등
- → Spring이 가진 모든 기능을 총동원하는 전형적 용도
- 자동화 테스트 프레임워크 개발
- Cucumber, Selenium 등의 테스트 도구와 결합해 테스트 인프라 구현
- → DI와 컨텍스트 관리를 통해 유지보수성과 확장성을 확보
- 데스크탑 애플리케이션 개발
- Spring은 UI 프레임워크는 없지만, 로직 계층 관리에 Spring IoC, AOP 적용 가능
- 모바일 앱 개발 (Spring for Android)
- REST 클라이언트 제공 (거의 안 씀. 참고용)
✅ 1.4 프레임워크를 쓰지 말아야 할 때
- 초소형 앱 (서버리스 포함) → 빠른 시작 시간, 작은 사이즈가 중요하면 Spring은 과하다
- 보안상 오픈소스 금지 환경 → 자체 구현이 필요
- 프레임워크가 오히려 개발을 방해할 때 → 지나친 커스터마이징은 개발 속도 저하
- 이미 잘 돌아가는 시스템을 억지로 바꾸려 할 때
🔥 교훈: 프레임워크는 만능이 아니다. 상황에 맞는 전략 선택이 핵심이다.
✅ 1.5 이 책에서 무엇을 배우게 되는가
- 스프링 컨텍스트/빈 등록
- DI와 AOP의 원리와 활용
- Spring Boot로 웹앱 구현
- REST API 구현 및 데이터 연동
- Spring Data를 활용한 DB 처리
- Spring 테스트 전략
💣 이 장의 핵심 교훈 요약

'프레임워크 > Spring' 카테고리의 다른 글
Spring Context: Wiring Beans (0) | 2025.05.01 |
---|---|
Spring Context: Defining Beans (0) | 2025.05.01 |
@Controller VS @RestController (0) | 2025.03.26 |
REST API (0) | 2025.03.26 |
의존, 의존성 주입(DI) (0) | 2025.03.25 |