ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 스프링이란
    Java/Spring 2019. 4. 6. 15:16

    ​■스프링의 역사 

    - 자바 엔터프라이즈(기업) 개발에 사용되는 애플리케이션 프레임워크 (프레임워크vs라이브러리)

    기원은 로드 존슨의 J2EE에 관한 서적에 딸린 예제코드

    - 책의 내용에 매료된 몇몇 개발자들이 로드 존슨을 꼬셔서(?) 정식 프레임워크로 만들기로 함.

    그것이 바로 스.프.링!

    스프링은 ejb의 한계로 인해 등장했으므로 ejb와의 비교를 통해 

    스프링에 대해 깊은 이해를 할 수 있음!



    ​■스프링은 경량급이다!

    코드에 불필요하게 등장하던 프레임워크와 서버환경에 의존적인 부분을 제거해줌

    - 이전 자바 웹프레임워크인 ejb는 기술에 대한 과도한 욕심으로 매우 무겁고 복잡했었음 

    (ex 고급 was를 사용해야 하는 것 등)

    - 예를들어

    - 톰캣,제티같은 경량급(?) was에서도 개발 가능! 

    - ejb에서의 복잡한 고급 기능들을 세련된 방식으로 사용 가능!

    - 참고

    EJB처럼 어떤 기술을 적용했을 때 그 기술과 관련된 코드나 규약 등이 

    코드에 등장하는 경우를 침투적인 기술이라고 한다.

    반면에 스프링처럼 비침투적인(non-invasive) 기술은 기술의 적용 사실이 

    코드에 직접 반영되지 않는다는 특징이 있다.



    ​■스프링은 개발자를 편하게 해준다!

    개발자들이 프레임워크가 제공하는 기술이 아니라 자신이 작성하는 애플리케이션의 로직에

    더 많은 관심과 시간을 쏟을 수 있게 해줌!

    초기에 스프링의 기본 설정과 적용 기술만 잘 선택하고 준비해두면, 이후로 애플리케이션 

    개발 중에는 스프링과 관련된 코드나 API에 대해 개발자가 거의 신경 쓸 일이 없음

    이 목표에서 볼 수 있듯이 편리한 애플리케이션 개발이란 

    개발자가 복잡하고 실수하기 쉬운 로우레벨 기술에 많은 신경을 쓰지 않으면서도 

    애플리케이션의 핵심인 비즈니스 로직을 빠르고 효과적으로 구현하는 것을 말함



    ​■스프링에 사용된 기법(프로그래밍 모델)들

    - IOC (DI)

    - AOP


    출처: https://12bme.tistory.com/157 [충일함만이 명확함에 이른다.]

    'Java > Spring' 카테고리의 다른 글

    @ControllerAdvice와 @ExceptionHandler  (0) 2020.07.27
    Spring 어노테이션  (0) 2019.05.20
    xss  (0) 2019.05.07
    IOC (DI)  (0) 2019.04.06
    프레임워크vs라이브러리  (0) 2019.04.06

    댓글

Designed by Tistory.