WPF MVVM实战系列教程(一、Prism框架介绍)

🧭 WPF MVVM入门系列教程


🍠 WPF MVVM进阶系列教程


⌨️ WPF MVVM实战系列教程



Prism框架介绍

Prism框架最初是由Microsoft patterns & practices 团队创建,它的目的是为了构建松耦合、可维护且可测试的 XAML 应用程序。

支持 WPF、.NET MAUI、Uno Platform 和 Xamarin Forms 平台。

每个平台均提供独立版本,且开发时间线相互独立。

Prism 实现了多项有助于编写结构良好且易于维护的 XAML 应用程序的设计模式,包括 MVVM、依赖注入、命令、事件聚合器等。

Prism的核心功能基于跨编译的.NET Standard和.NET 4.5/4.8库共享代码库实现。

平台特有的功能则在目标平台的对应库中实现。Prism还实现了这些模式与目标平台的深度集成。

例如Prism for Xamarin Forms提供的导航抽象层既支持单元测试,又基于平台原生导航概念与API构建,使开发者能充分利用平台特性,同时保持MVVM架构的规范性。

6.3版本是Microsoft patterns & practices 团队维护的最后一个版本,后续将代码放到社区,7.0版本是社区维护的第一个版本,目前最新是9.0版本。

Prism 9 标志着应用程序开发领域的一次重大飞跃,其核心在于致力于实现跨平台API的统一。这一突破将为开发者开启无限可能:既能将代码从旧版应用程序中迁移出来,也能实现不同应用开发平台间的无缝转换,从而最大化代码复用率,同时大幅降低开发成本。

说明:稳定项目建议使用Prism 8.1.97版本

 

Prism项目地址:

https://github.com/PrismLibrary/Prism

 

Prism WPF示例代码地址:

https://github.com/PrismLibrary/Prism-Samples-Wpf

 

何时需要使用Prism框架

Prism这个框架的最初目的是为了方便我们构建强大的XAML应用程序,它包含的功能比较多,MVVM只是它的一部分功能。

使用Prism框架没有硬性规定,但是如果我们只是用到它的MVVM功能,推荐使用CommunityToolkit.MVVM包,它更轻量级。

Prism更偏向于大型项目,例如多人协同时需要进行模块化开发。

 

Prism中涉及的概念需要我们对常用的设计模式有一定的了解,例如,模块化/组合式开发、MVVM、观察者模式、中介者模式等等。

大部分在前面的文章中已经介绍过,关于模块化,可以参考下面的文章:

https://en.wikipedia.org/wiki/Modular_programming

正是因为使用了大量的设计模式,一部分初学者刚接触Prism框架时,会难以理解其中的概念。都会有一个疑问,就是:这里为什么是这么调用的?

我的建议是循序渐进,前期不理解没关系,可以根据我文章中的内容和示例代码,多理解几遍,然后再自己尝试用一些小例子去进行演练,慢慢就能理解其中的原理。

 

Prism框架包含的核心组件功能

  1. Commands/命令
  2. Dependency Injection/依赖注入
  3. Dialog Service/对话框服务
  4. Event Aggregator/事件聚合器
  5. Mvvm
  6. Modularity/模块化
  7. Navigation/导航 

 

 

参考资料:

https://docs.prismlibrary.com/docs/index.html

posted @ 2025-11-18 17:14  zhaotianff  阅读(2)  评论(0)    收藏  举报