토비의 스프링 시작. - 스프링이 제공해주는 것들.

eunmo hong·2019년 6월 23일
0

토비의 스프링

목록 보기
1/6

스프링?


자바엔터프라이즈 애플리케이션 개발에 사용되는 애플리케이션 프레임워크.
기본 틀, 공통프로그래밍 모델, 기술API 등을 제공한다.
스프링을 사용한다는 것은 다음 세가지 요소를 적극적으로 활용해서 개발한다는 뜻이다.

스프링의 구성요소.


애플리케이션의 기본 틀 - 스프링컨테이너

  • 설정정보를 참고로해서 애플리케이션을 구성하는 오브젝트를 생성하고 관리한다. 일반적으로 웹모듈에서 동작하는 서비스나 서블릿으로 등록해서 사용한다.
  • 스프링을 사용하기 위해선 스프링컨테이너를 다루는 방법과 설정정보를 작성하는 방법을 알아야한다.

공통프로그래밍모델 - IoC/DI , 서비스 추상화, AOP

애플리케이션을 구성하는 오브젝트가 생성되고 동작하는 방식에 대한 틀을 제공해준다. 코드의 작성방법의 기준도 제시한다. 이런 틀을 보통 프로그래밍모델이라 한다.

  • IoC/DI
    • 오브젝트의 생명주기와 의존관계에 대한 프로그래밍 모델. 유연하고 확장성이 뛰어난 코드를 만들 수 있게 도와주는 객체지향 설계 원칙과 디자인 패턴의 핵심원리를 담고있다. 스프링의 기본이 되며 가장 중요한 기술.
  • 서비스 추상화.
    • 구체적인 기술과 환경에 종속되지 않도록 유연한 추상계층을 두는 방법이다.
  • AOP
    • 코드에 이리저리 흩어져있는 부가적인 기능을 독립적으로 모듈화 하는 프로그래밍 모델. 깔끔한 코드를 유지할 수 있게 도와준다.

기술 API

  • UI작성 뿐만아니라, 웹프레젠테이션 계층, 비지니스 서비스 계층 등 다양한 서비스에서 필요한 주요 기술을 스프링에서 일관된 방식으로 사용할 수 있도록 지원해주는 기능과 전략클래스 등을 제공한다.

  • 스프링이 제공하는 API와 지원 기술은 모두 스프링의 프로그래밍모델( ioc/di, 서비스추상화, aop를 말하는 것인가?) 에 따라 작성되있기 때문에 쓰는 것만으로도 스프링의 프로그래밍모델을 코드에 자연스레 녹여낼 수 있다.


결론. 스프링을 사용한다는 것은?

위 세가지 요소를 적극적으로 활용해서 애플리케이션을 개발한다는 뜻
1. 클래스는 스프링 컨테이너 위에서 오브젝트로 만들어져 동작하게 만든다.
2. 코드는 스프링의 프로그래밍 모델에 따라 작성한다.
3. 엔터프라이즈 기술을 사용할 때는 스프링이 제공하는 기술API와 서비스를 활용한다.

    
profile
안녕하세요!

0개의 댓글