MVVM 응용프로그램을 위한 프로젝트 구조화

MVVM 아키텍처 패턴을 사용할 때 코드의 의존관계를 엄격하게 제한함으로써 구성요소의 잘못된 설계 위험을 줄일 수 있다.

structuring-projects-for-mvvm-application

  • 모델(Model), 뷰모델(ViewModel), 뷰(View)를 물리적으로 구분된 프로젝트에 분산시켜라.
  • 프로젝트 순환 참조를 금지하라.
  • 뷰모델 프로젝트가 모델 프로젝트를 참조하게 하라.
  • 뷰 프로젝트가 뷰모델 프로젝트를 참조하게 하라.
  • 뷰모델 프로젝트가 UI 프레임워크를 참조하지 않게 하라.
  • 의존성 역전 원리(Dependency Inversion Principle)를 필요한 곳에 필요한 만큼만 절제해 사용하라. 이 때 반드시 인터페이스 분리 원리(Interface Segregation Principle)를 함께 고려하라.

이 규칙들은 당신의 모델, 뷰모델, 뷰의 관심사가 뒤엉켜버리는 것을 상당 부분 막아줄 것이다. 만약 이미 존재하는 MVVM 응용프로그램 코드를 이 구조로 재편하는 것에 걸림돌이 많다면 당신의 코드는 나쁜 설계를 가지고 있을 가능성이 높다.

하지만 이것은 어디까지나 최소한의 구조적 장치일 뿐이다. 프로그래머의 무지함을 원천적으로 차단해 줄 도구는 아직 존재하지 않는다.

Advertisements

답글 남기기

아래 항목을 채우거나 오른쪽 아이콘 중 하나를 클릭하여 로그 인 하세요:

WordPress.com 로고

WordPress.com의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

Twitter 사진

Twitter의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

Facebook 사진

Facebook의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

Google+ photo

Google+의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

%s에 연결하는 중