[항해99] WIL - 3주차 회고록

2022. 3. 27. 19:47Hanghae99/WIL

Weekly I Learned

  •  Spring 게시판 만들기
  •  MVC 디자인 패턴

이번 주차는 Spring 프레임워크를 사용해 게시판을 제작하였고 가장 중요하다고 생각되는 MVC 디자인 패턴에 대해서 공부하였다.

 

DI (의존성 주입) 이란

Spring 프레임워크는 3가지 핵심 프로그래밍 모델을 지원하고 있다. 그중 하나가 의존성 주입(Dependency Injection, DI)이다.

외부에서 두 객체 간의 관계를 결정해주는 디자인 패턴으로, 인터페이스를 사이에 둬서 클래스 레벨에서는 의존관계가 고정되지 않도록 하고 런타임 시에 관계를 다이내믹하게 주입하여 유연성을 확보하고 결합도를 낮출 수 있게 해 준다.

의존성이란 한 객체가 다른 객체를 사용할 때 의존성이 있다고 한다.

 

 

강한 결합일때
강한 결합 해결방법

IoC (제어의 역전) 이란

  • 일반적: 사용자가 자신이 필요한 객체를 생성해서 사용
  • IoC (제어의 역전)
    • 용도에 맞게 필요한 객체를 그냥 가져다 사용
      • "DI (Dependency Injection)" 혹은 한국말로 "의존성 주입"이라고 부릅니다.
    • 사용할 객체가 어떻게 만들어졌는지는 알 필요 없음
    • 실생활 예제) 가위의 용도별 사용
      • 음식을 자를 때 필요한 가위는? → 부엌 가위 (생성되어 있는 객체 kitchenScissors)
      • 무늬를 내며 자를 때 필요한 가위는? → 핑킹가위 (생성되어 있는 객체 pinkingShears)
      • 정원의 나무를 다듬을 때 필요한 가위는? → 전지가위 (생성되어 있는 객체 pruningShears)

 

    •  

Bean 이란

Spring IoC 컨테이너가 관리하는 자바 객체를 빈이라고 한다.

우리가 알던 기존의 Java Programming에서는 Class를 생성하고 new를 입력하여 원하는 객체를 직접 생성한 후에 사용했는데 Spring에서는 직접 new를 이용하여 생성한 객체가 아니라, Spring에 의하여 관리당하는 자바 객체를 사용합니다. 이렇게 Spring에 의하여 생성되고 관리되는 자바 객체를 Bean이라고 합니다. Spring Framework에서는 Spring Bean을 얻기 위하여 ApplicationContext.getBean()와 같은 메서드를 사용하여 Spring에서 직접 자바 객체를 얻어서 사용합니다.

 

728x90

'Hanghae99 > WIL' 카테고리의 다른 글

[항해99] WIL - 8주차 회고록  (0) 2022.05.02
[항해99] WIL - 7주차 회고록  (0) 2022.04.25
[항해99] WIL - 4주차 회고록  (0) 2022.04.03
[항해99] WIL - 2주차 회고록  (0) 2022.03.20
[항해99] WIL - 1주차 회고록  (0) 2022.03.13