프로그래밍/Web
Spring 특징
국윤창
2018. 1. 21. 06:58
1. POJO (Plain Old Java Object)
특정한 API(Servlet 등)를 상속, 구현하지 않고 개발할 수 있어서 이식성이 좋다.
2. AOP(Aspect Oriented Programming)
관점 지향 프로그래밍이다. 무슨 말인지 와닿지는 않는다.
객체지향 프로그래밍으로 모듈화를 해도 프로그램이 커지면 이런 모듈간에도 중복된 코드가 생긴다. 이것을 횡단 관심사 (Crosscutting-Concerns)라고 하는데 이걸 없애는게 AOP 목표다.
참고: http://3months.tistory.com/74 (예제 코드 및 설명)
3. DI (Dependency Injection)
객체간의 의존성을 외부에서 주입한다. 이말이 좀 어려운데 환경설정만으로 기능을 다르게 해서 소스코드의 변경을 최소화할 수 있는 것을 말한다.
참고: http://jhleed.tistory.com/61 (예제 코드 및 설명)
4. IoC(Inversion of Controller)
스프링은 IoC 컨테이너를 지원함. 스프링은 프로그램의 흐름을 프레임워크가 담당한다. 이것을 지원함으로써 위의 DI가 가능해진다고 한다.
자세한 건 더 공부해야한다.
참고하면 좋음: http://isstory83.tistory.com/91 (예제 코드 및 설명)
위의 네가지를 이용하여 자바 개발을 간소화하는 것이 스프링 프레임워크의 핵심이다.