의존성 주입

ClassBinu·2024년 4월 20일

F-lab

목록 보기
12/65

의존성 주입 예시

class Engine {
  start() {
    console.log("Engine started");
  }
}

class Car {
  constructor(private engine: Engine) {}

  start() {
    this.engine.start();
    console.log("Car started with engine");
  }
}

// 의존성을 주입하는 외부 코드
const engine = new Engine();
const car = new Car(engine);
car.start();

의존성 미주입 예시

class Engine {
  start() {
    console.log("Engine started");
  }
}

class Car {
  private engine: Engine;

  constructor() {
    this.engine = new Engine(); // Engine 인스턴스를 내부에서 직접 생성
  }

  start() {
    this.engine.start();
    console.log("Car started with its own engine");
  }
}

// Car 인스턴스 생성
const car = new Car();
car.start();

0개의 댓글