Spring이란?

dongeranguk·2023년 2월 7일
0

Spring

자바 플랫폼을 위한 오픈소스 애플리케이션 프레임워크

Spring은 프레임워크로 라이브러리와는 차이점이 있다.

프레임워크와 라이브러리의 차이

  • 이 둘은 흐름 제어권이 누구에게 있는가로 나뉜다.

프레임워크는 흐름 제어를 자기 자신이 하고 애플리케이션이 실행하는 데 있어 필요한 기능들을 개발자가 직접 작성한 코드를 호출하여 사용한다.

따라서, 프레임워크는 IoC(제어의 역전) 개념이 반드시 적용되어야만 한다.

스프링의 특징

스프링의 특징으로는 크게 4가지로 소개된다.

  • 경량 컨테이너
    스프링은 스프링 애플리케이션 컨텍스트라는 컨테이너를 가지고 있으며, 이 곳에서 객체들의 라이프사이클을 관리한다. 즉, 객체를 생성부터 소멸까지 관리한다.
  • 제어의 역전(IoC)
    제어의 역전 개념이 적용되어, 애플리케이션이 동작하는 데 있어 필요한 기능들을 개발자가 직접 작성한 코드들을 프레임워크가 호출하여 사용한다.
  • 의존성 주입
    컴포넌트가 다른 컴포넌트를 필요로 할 때 의존성을 가진다라고 할 수 있다. 스프링은 다른 컴포넌트를 필요로 하는 컴포넌트에게 의존성을 주입해준다.
    의존성을 주입하는 방법으로는 크게 3가지가 있는데, 이 글을 참조하자.
  • 관점 지향 프로그래밍(AOP)
    어떤 기능들이 동작하는 데 있어 반복적으로 호출되는 코드들을 한 데 모아, 어떤 기능이 동작하기 전, 후 관점을 기준으로 호출되게끔 설정할 수 있다.

출처 : https://ko.wikipedia.org/wiki/%EC%8A%A4%ED%94%84%EB%A7%81_%ED%94%84%EB%A0%88%EC%9E%84%EC%9B%8C%ED%81%AC, https://cocoon1787.tistory.com/745

0개의 댓글