代码之家  ›  专栏  ›  技术社区  ›  STW

哪种.NET 2.0开发模式(MVP、MVC等)最适合在过渡到WPF和MVVM时允许轻松重用?

  •  4
  • STW  · 技术社区  · 16 年前

    我们正在研究MVP这样的模式,它可以帮助我们将UI与逻辑从数据中分离出来。这项倡议在游戏后期,但正努力开始制定规则,我们需要编写更多可测试的代码(目前我们编写的是毛球、意大利面、管道胶带和木螺钉等)。

    当我们考虑采用2.0 WinForms应用程序的方法时,我们也将WPF和我们产品的下一代UI牢记在心。我们正试图通过取消WinForms UI/视图并启用新的WPF UI/视图,来创建一些在WPF世界中可以随时重用的东西。

    2.0开发的特定模式是否适合自然地滑入WPF的MVVM模式?我们今天应该遵循什么样的模式,使我们能够在不需要将WPF侵入现有的表示逻辑的情况下过渡到WPF,或者大量地重做/移动(再次)我们的表示逻辑来适应WPF?

    1 回复  |  直到 16 年前
        1
  •  3
  •   MegaByte    16 年前

    MVP模式将为您提供这种逻辑分离,但我认为MVP的优势主要在于编写可测试的代码。

    我建议您阅读Bob叔叔(Robert C Martin)的书《敏捷原则、模式和实践》。

    另外,我相信您不一定需要使用MVP这样的模式来从逻辑上分离业务逻辑和UI层。如果结构正确,那么您的所有业务逻辑都将驻留在一个业务层中,该业务层与您的UI层完全断开连接。然后,您可以使用多个接口,如winforms、webforms或webservice,甚至wpf,来访问同一个业务层,而无需重写任何业务逻辑、验证、授权规则等。

    在这种情况下,我建议您阅读Rocky Lhotka的《Expert C Business Objects》一书。这本书易读,他解释了如何划分逻辑层。同时,他的目标是将用户界面代码控制在最低限度。

    推荐文章