스프링이란?
Java/Kotlin 기반의 웹프레임워크
스프링의 특징
DI(Dependency Injection) : 의존관계 주입
-> 개발자가 아닌 스프링 프레임워크에서 객체 간 의존관계 주입
-> 유연한 개발이 가능
-> 각각의 계층이나 서비스들 간에 의존성이 존재할 경우 프레임워크가 서로 연결시켜줌
IoC(Inversion of Control) : 역제어
-> 제어권이 개발자가 아닌 스프링 프레임워크에게 있음
AOP(Aspect Oriented Programming) : 관점 지향 프로그래밍
-> 자주 사용되는 요소를 단일 기능으로 뽑아내어 코드의 중복을 줄임