Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon 설정 클래스는 MVVMCross에서 어떤 역할을합니까?


설정 클래스는 MVVMCross에서 어떤 역할을합니까?


MVVMCross의 설정 클래스는 프레임 워크의 부트 스트레이퍼로서 중요한 역할을 수행하여 응용 프로그램 인프라를 초기화하고 구성하는 일을 담당합니다. iOS, Android 또는 UWP와 같은 모든 플랫폼 별 프로젝트의 필수 구성 요소이며 몇 가지 주요 기능을 제공합니다.

1. 프레임 워크 초기화 : 설정 클래스는 IOC (Control) 컨테이너, 데이터 바인딩 엔진, 뷰 모드/뷰 조회, 내비게이션 시스템 및 플러그인과 같은 필수 구성 요소를 설정하여 MVMCROSS 프레임 워크를 초기화합니다. 이 프로세스는 두 가지 주요 단계에서 발생합니다.`earthetizeprimary`와`초기화 '. 전자는 메인 스레드에서 핵심 구성 요소를 초기화하는 반면, 후자는 플랫폼 서비스를 배경으로 구성한다 [1] [9].

2. 앱 클래스 생성 : 설정 클래스는 핵심 프로젝트에 정의 된`app` 클래스의 인스턴스를 작성해야합니다. `App '클래스는 응용 프로그램의 비즈니스 로직 및 뷰 모델을 초기화합니다 [4] [10].

3. 서비스 등록 : IOC 컨테이너를 사용하여 플랫폼 별 서비스 및 플러그인을 등록 할 수있는 장소를 제공합니다. 이를 통해 개발자는 응용 프로그램에 종속성을 주입하여 다른 플랫폼에서 복잡한 논리를보다 쉽게 ​​관리 할 수 ​​있습니다 [4] [10].

4. 사용자 정의 : 설정 클래스는`initializefirstchance` 및`initializelastchance`와 같은 방법을 통해 사용자 정의 기회를 제공합니다. 이 방법을 통해 개발자는 애플리케이션이 완전히 초기화되기 전에 암호화 서비스와 같은 플랫폼 별 비즈니스 객체 또는 서비스를 등록 할 수 있습니다 [10].

5. 디버깅 및 로깅 : 개발 중에 문제를 진단하는 데 도움이되는 '디버그 트레이스'인스턴스 생성과 같은 디버깅 및 로깅 메커니즘 설정에도 관여합니다 [7].

요약하면, 설정 클래스는 MVVMCross 애플리케이션을 부트 스트랩하는 데 필수적이므로 애플리케이션이 시작되기 전에 필요한 모든 구성 요소가 올바르게 초기화되고 구성되도록합니다. 플랫폼 별 UI 프로젝트와 휴대용 클래스 라이브러리 (PCL) 또는 .NET 표준 라이브러리에 정의 된 핵심 논리 사이의 브리지 역할을합니다.

인용 :
[1] https://www.mvvmcross.com/documentation/tutorials/tipcalc/a-xamarinios-ui-project
[2] https://stackoverflow.com/questions/34329985/
[3] https://coderpad.io/blog/development/a-guide-to-database-unit-testing-with-pytest-and-sqlalchemy/
[4] https://leaware.com/creating-cross-platform-xamarin-applications-using-the-mvvmcross-framework/
[5] https://learn.microsoft.com/en-us/archive/msdn-magazine/2014/august/windows-phone-build-mvvm-apps-with-xamarin-and-mvvmcross
[6] https://stackoverflow.com/questions/17602137/mvvmcross-how-does-this-get-get-linked-tothe-viewmodel/17602246
[7] https://www.codeproject.com/articles/863695/introduction-to-mvvmcross-platform
[8] https://nicksnettravels.builttoroam.com/post-2017-12-28-making-mvvmcross-with-xamarin-forms friction-free-aspx/
[9] https://www.mvvmcross.com/documentation/getting-started/mvvmcross-overview
[10] https://www.mvvmcross.com/documentation/advanced/customizing-using-app-and-setup
[11] https://stackoverflow.com/questions/48132099/how-is-setup-class-instantiated-in-mvmcross-in-xamarin