Flutter

Dart 문법 - Mixin

whs5758 2025. 8. 18. 18:50

Mixin은 여러 클래스 계층에서 클래스의 코드를 재사용하는 방법입니다. Mixin을 사용하게 되면 다중 상속의 문제를 해결할 수 있고 컴퍼지션을 사용하지 않고 다른 클래스의 코드를 재사용할 수 있습니다. 

// Mixin <-- 여러 클래스에서 재사용할 수 있는 기능을 제공하는 방법

mixin Logger {
  void log(String message) {
    DateTime now = DateTime.now();
    print("[${now}] ${message}");
  }
}

class UserService with Logger {
  void createUser(String name) {
    log("사용자 생성 시작 : ${name}");
    // 로직 처리
    log("사용자 생성 완료");
  }
}

void main() {
  // Logger logger = new Logger();
  UserService userService = new UserService();
  userService.createUser("도레미");

  // 자바 인터페이스 : 구현해야 할 메서드의 명세만 제공(추상적)
  // Dart mixin : 완성된 기능을 그대로 제공(구체적)
}

 

'Flutter' 카테고리의 다른 글

Dart 문법 - 컬렉션  (0) 2025.08.18
Dart 문법 - 추상 클래스  (1) 2025.08.18
Dart 문법 - 상속  (1) 2025.08.18
Dart 문법 - dart null Safety  (3) 2025.08.18
Dart 문법 - 클래스  (2) 2025.08.18