패캠 스프링 초격차 Part1. Spring Framework-Ch.02 필기노트
스프링 프레임워크를 이루는 다양한 기술
-
DB관련 기능
- JDBC
- ORM
- OXM
- JMS
- Transactions
-
WEB
- WebSocket
- Servlet
- Web (http 요청, 응답)
- Portlet
-
AOP (관점지향)
-
Core Container
핵심 기술
- Core (DI, IoC)
- Spring이 시작될때 판을 만들고 우리는 장기알을 만들어 올리고 밑바닥 판이 알아서 동작하는 것을 코어 기술이라고 비유
- AOP (Aspect Oriented Programming)
- 공통적인 기능을 간편하게 넣고 빼고 하는것
- Vaildation, Data binding
- API를 만들때 요청값에 맞게 Vaildation 하거나 Data binding 한다.
- Data binding : 요청값을 객체에 담아주는 것 (주로 Json 타입)
- Resource
- 파일이나 외부 URL등 접근할때 활용
- Spring 애플리케이션 외부 자원에 접근할때 쓰는 API
- SpEL
- Spring expresion Language
- Null-Safety
- JAVA를 사용할때 가장 어려운 Null 관리
- if문으로도 처리를 많이 하지만 이런 null 처리 방법을 Spring 프레임워크 내에서 안전하게 처리하는 방법
- 디자인 철학
- 다양한 모듈 활용, 외부모듈 가능 (스프링을 어렵게 하는 요소)
- 유연하게 계속 추가 개발을 하고 있는 프레임 워크
- 이전버전과 강력한 호환성
- API 디자인을 섬세하게 노력한다
- 높은 코드품질 유지
결론
높은 자유도를 주고 계속 발전하는 고품질의 다양성이 있는 프로젝트, 그런데 너무 자유로워서 때론 어렵다.