MVVMCross는 .NET 생태계 내에서 크로스 플랫폼 애플리케이션 개발을 위해 설계된 강력하고 의견이 많은 MVVM (Model-View-ViewModel) 프레임 워크입니다. Xamarin.ios, Xamarin.Android, Xamarin.Forms, UWP (Universal Wind 주요 기능과 작동 방식에 대한 개요는 다음과 같습니다.
mvvmcross의 주요 기능
-MVVM 아키텍처 패턴 : MVVMCross는 MVVM 패턴을 구현하여 응용 프로그램 로직을 서로 연결된 세 가지 구성 요소로 분리합니다 : 모델,보기 및 뷰 모델 [3].
-내비게이션 시스템 : 강력한 내비게이션 시스템을 제공하여 ViewModel-to-ViewModel 전환을 쉽게 관리 할 수 있습니다 [2] [4].
- 데이터 바인딩 : MVVMCross에는 사용자 정의 가능한 바인딩 엔진이 포함되어 개발자가 뷰에 맞는 바인딩을 만들 수 있습니다 [4].
- 제어 (IOC) 및 종속성 주입의 역전 : 프레임 워크는 의존성 주입을 통해 IOC를 지원하여 느슨한 커플 링 및 테스트 가능성을 용이하게합니다 [3] [4].
-플랫폼 별 지원 : 플랫폼 별 기능 및 기능에 대한 광범위한 지원을 제공합니다 [3].
- 플러그인 및 확장 : MVVMCross에는 개발자가 GPS, 현지화 등과 같은 추가 기능을 쉽게 통합 할 수있는 플러그인 프레임 워크가 포함되어 있습니다 [4].
mvvmcross의 작동 방식
코어 및 UI 프로젝트
MVMCROSS 응용 프로그램은 일반적으로 두 가지 주요 부분으로 구성됩니다.
- 핵심 프로젝트 : 여기에는 비즈니스 로직, 뷰 모델, 서비스 및 모델이 포함됩니다. 일반적으로 크로스 플랫폼 호환성을 보장하기 위해 .NET 표준 라이브러리로 구현됩니다 [2].
-UI 프로젝트 : 각 플랫폼 (예 : iOS, Android)에는 자체 UI 프로젝트가 있으며 여기에는 플랫폼 별 코드와 핵심 프로젝트와 상호 작용하는 뷰가 포함됩니다 [2].
키 객체 및 초기화
- 앱 클래스 : 핵심 프로젝트에 위치한이 클래스는 IOC 컨테이너에 사용자 정의 객체를 등록하고 응용 프로그램 논리를 초기화해야합니다 [2].
- AppStart 객체 : 선택 사항,이 개체는 응용 프로그램 시작 중에 먼저 존재할 뷰 모델을 결정합니다 [2].
- 설정 클래스 : 각 플랫폼 프로젝트에서 발견 된이 클래스는 MVVMCross를 초기화하고 플랫폼 별 서비스를 등록합니다 [2].
초기화 프로세스
1. 플랫폼 시작 : 기본 플랫폼의 시작 프로세스가 시작됩니다.
2. MVVMCROSS 설정 :`SETUP '클래스는 프레임 워크를 두 단계로 초기화합니다.`InitializePrimary` (기본 스레드) 및'초기화 '(백그라운드 스레드) [2].
3. 앱 초기화 :`app '클래스가 초기화되고, 첫 번째 탐색 단계를 관리하기위한'AppStart '객체를 제공합니다 [2].
mvvmcross로 시작하는 것
새로운 MVVMCross 프로젝트를 시작하려면 개발자는 MVXScaffolding과 같은 템플릿을 사용할 수 있습니다. 프레임 워크는 핵심 프로젝트 및 플랫폼 별 프로젝트 모두에 설치 해야하는 NUGET 패키지를 통해 사용할 수 있습니다 [3] [4]. 자세한 가이드 및 문서의 경우 공식 MVMCROSS 웹 사이트 및 GITHUB 리포지토리는 우수한 리소스입니다 [1] [4].
인용 :[1] https://www.mvvmcross.com
[2] https://www.mvvmcross.com/documentation/getting-started/mvvmcross-overview
[3] https://www.mvvmcross.com/documentation/getting-started/getting-started
[4] https://github.com/mvvmcross/mvvmcross
[5] https://www.mvvmcross.com/blog/
[6] https://github.com/mvvmcross
[7] https://x.com/mvvmcross?lang=en
[8] https://www.nuget.org/profiles/mvvmcross