对于即将到来的项目,我正在考虑将 MVP 作为 MVC 的一个选项。我非常熟悉并喜欢 MVC,我只是想看看我是否会使用 MVP 获得任何东西。
我收集到的关于 MVP 的信息是它使用了使用 ViewState 的 ASP.Net 视图引擎/MVC#(我不是特别喜欢)——向渲染的网页添加一堆额外的内容,而不是内置的路由功能(可以单独写入Global.asax)。
另一方面,MVC/Razor 呈现非常干净的 HTML。
某些文章,例如这篇文章,似乎倾向于将 MVP 用于多个视图,但是鉴于带有 jQuery Mobile 的 MVC3,可以使用此 MVC 完成一些奇妙的事情。
这些与当前可用的 MVP 相比如何?在 MVC 上使用 MVP 有哪些优点/缺点或潜在的陷阱?
我也在考虑使用现有的 MVP 应用程序来加快开发时间。
我知道您会在以下情况下畏缩,但要寻找选项: 虽然此应用程序提供了所有必需的功能,但如果实施此解决方案,与其他 MVC 应用程序绑定有多困难(我知道这看起来很难看)?如果这是我们必须考虑的事情(将两者结合起来),最好将应用程序包装在 MVC(路由)中并将 MVP 应用程序包含在其中吗?
其原因是交错的功能更新过程,其中要求实现一个新功能(使用 MVC 框架构建;系统的其余部分不是)。未来的计划是将当前框架完全更改为 MVC 或 MVP。
谢谢。