1.概要
Prism介紹
-
Github: https://github.com/PrismLibrary/Prism
-
開發文件:https://prismlibrary.com/docs/
Prism是一個框架,用於在WPF、Xamarin Forms、Uno Platform和WinUI中構建鬆散耦合、可維護和可測試的XAML應用程式。
設計目標 為了實現下列目的:建立能夠由模組組成的程式,這些模組能夠被單獨地編寫、組裝、部署,並且對於程式來說是可選的 最小化團隊之間的依賴,讓每個團隊專注與特定的領域。比如UI、邏輯程式碼實現或者是架構程式碼的開發。通過架構提高不同團隊之間的複用能力 通過抽象團隊通用服務提高程式質量 迭代新增新的功能
Prism被設計用來幫助你設計和實現豐富、靈活、易於維護的WPF程式。Prism實現了多種設計模式,突出架構設計的鬆耦合、關注點分離等原則。使用設計模式和Prism提供的額能力,你可以通過獨立開發的鬆耦合元件輕鬆的整合到整個應用程式中,從而開發一個應用程式。 Prism圍繞架構原則的分散關注點和鬆耦合原則而設計的。這使得Prism提供能一下的好處:
-
重用。Prism通過允許元件和服務能夠輕鬆的被開發、測試、整合到一個或多個程式來實現重用。元件級別的複用是通過依賴注入來輕鬆地發現和整合單元測試級別的元件。應用級別的複用是重用封裝了應用級別能力的模組。
-
可擴充套件。Prism通過管理元件依賴,允許元件在執行時很容易地被整合或者被其他實現所替換,使得程式能夠很容易地被擴充套件。並且將程式分解到模組,使得模組能夠獨立地更新和部署。Prism庫中的許多元件本身就可以被擴充套件或者是替換。
-
靈活。Prism通過允許像開發整合新能力一樣更新功能。Prism還允許WPF程式使用通用服務和元件開發,允許程式以最適當地方式去部署和使用。還允許程式基於不同的角色和配置,提供不同的使用功能。
-
團隊開發。Prism促進團隊開發,通過允許不同的團隊單獨開發甚至部署不同的應用程式部分。通過讓團隊專注於不同的功能領域或業務功能領域來減少團隊之間的依賴。
-
質量。Prism通用讓開發團隊充分地測試服務和元件提高程式質量。此外,由於通用服務和元件都被完全地測試過了,開發團隊能夠專注於程式需求而不是如何實現和測試基礎程式碼。 (以上內容均來自網路。)
2.詳細內容
-
1.業務功能:
-
(1)登入郵箱
-
(2)郵件收發、抄送(協議、介面、文字編輯、佈局)、回覆 、垃圾箱、收發件箱、標星郵件、標星郵件列表、郵件(增、刪、查)。
-
(3)通訊錄(新建、刪除、修改聯絡人)、聯絡人詳情、聯絡人列表。
-
(4)設定(賬號)
-
2.非業務功能:登入、自動更新、最大化最小化、關閉等。
-
3.介面互動:命令區(主、副命令區劃分等級根據影響範圍來確定)、工作區、互動邏輯。
-
4.資源:資料資源(樣式、資料內容、模板、動畫、觸發器等)、非託管資源(圖片、音樂等檔案資源)、語言資源、字型資源等。
3.建項
-
1.VS擴充套件中下載 Prism Template Pack專案模板。
-
2.新建專案時,使用模板‘Prism Blank App’建立應用,選擇DryIOC
-
3.建立一個業務模組
IoC:是物件導向程式設計中的一種設計原則,可以用來減低計算機程式碼之間的耦合度。其中最常見的方式叫做依賴注入(Dependency Injection,簡稱DI),還有一種方式叫“依賴查詢”(Dependency Lookup)。通過控制反轉,物件在被建立的時候,由一個調控系統內所有物件的外界實體將其所依賴的物件的引用傳遞給它。也可以說,依賴被注入到物件中。
按照以上思想設計的框架都叫IoC,它只是這一類框架的總稱。IoC的框架有很多種例如MEF、Autofac、Castle Windsor、Unity。
初學可簡單理解為有兩個部分組成一個業務容器,和若干個業務模組組成。都塞到容器中進行管理。
Plug:是業務劃分獨立出的模組,裡面具體的業務實現和常規的MVVM一樣。