spring 2

[Spring] 제어의 역전(IoC) + Bean

이펙티브 자바 책을 읽으면서, 동시에 Spring을 배우면서새로 접하게 되는 개념 중 하나인제어의 역전(IoC, Inversion of Control)용어 자체만 보면 어렵게 느껴질 수 있지만,코드에서 객체를 누가 생성하고, 누가 관리하는지에 관한 용어이다! 제어의 역전과 더불어서Spring하면 빠질 수 없는 핵심 개념인 Bean 에 관해 이야기해보고자 한다   1. 제어의 역전(IoC)란? 이해하기 쉽게 저녁 식사를 예시로 들어보자! Pasta 클래스와, Food 인터페이스가 있을 때 // Food interfacepublic interface Food { void eat();}// Pasta classpublic class Pasta implements Food { public void p..

[Spring] 의존성 주입(DI)

🔌 의존성 주입(Dependency Injection)  1. '의존성 주입(DI)'이란? 객체가 사용할 객체를 스스로 만들지 않고,필요한 객체를 외부에서 받아오는 외부에서 주입 받는 디자인 패턴! 우리가 택배 기사라고 했을 때,(기존 방식) 직접 박스를 만들고, 물건을 넣고, 포장하고, 배송하고(의존 객체를 생성하는 방식) 박스(=의존 객체)는 회사에서 준비(주입)해줄게. 넌 배달만 해라는 차이!  직접 코드로 이해해보자.  [기존 방식]public class CarService { private Engine engine; public CarService() { // CarService가 직접 엔진을 생성함 (강한 결합) this.engine = new te..