스프링 프레임워크 [Spring]

Rudy·2023년 8월 8일
0

스프링 프레임워크

  • spring은 자바 엔터프라이즈 개발을 위한 오픈소스 경량 애플리케이션 프레임워크이다.

  • "엔터프라이즈" : 규모가 큰 프로그램이다. 사용자가 많다

spring core IOC/DI

  • 일반적인 객체지향 프로그램에서는 객체를 사용하는 시점에 직접 객체를 생성하여 사용한다
  • 객체간의 의존성을 줄이기 위해서 인터페이스와 추상 클래스를 이용
  • 소스 코드 상에서 하드 코딩한 객체 생성 구현은 객체 간의 의존성을 강요한다.
  • 의도한 것은 아니지만 직접적인 객체 생성으로 인해 객체 간의 결합도가 높아진다

IOC 제어의 역전

  • 통제 방향의 변경을 말한다
  • 프레임워크가 갖는 일반적인 속성으로 특정 일에 대한 주체를 변경하는 것이다.
  • 객체 간 결합도가 높으면 해당 클래스가 변경될 때 결합된 다른 클래스도 같이 수정될 가능성이 높다 그래서 IOC는 객체 생성 책임을 컨테이너에게 위임하여 객체간의 결합도를 낮춘다
  • 의존 관계를 설정하는 3가지 방법 (XML,어노테이션,자바소스)

Dependency Injection 의존성 주입

  • DI를 통해 외부에서 객체를 생성하는 시점에 참조하는 객체에게 의존관계를 제공한다
  • 객체가 인터페이스만 알고 있으므로 느스한 결합 이 가능하다

3가지 Injection 방식이 있다

  • Setter Injection
  • Constructor Injection 가장 많이 사용
  • Method Injection
profile
주니어 개발자

1개의 댓글

comment-user-thumbnail
2023년 8월 8일

많은 것을 배웠습니다, 감사합니다.

답글 달기