你有什么好或坏的项目经验要分享吗?
我有一些技巧要分享,这些都来源于我的编程经验。
MVC - 这种模式/架构非常古老,并经过实践考验。对于基于Web的项目来说非常棒,因为视图与服务器(和模型)是分离的。
但是,在模型可用时,我认为有更好的模式可以替代MVC。
MVP - 当你没有数据上下文允许绑定时使用它(例如WinForms)。此外,如果由于某些原因无法使用ASP.NET MVC,但仍然可以使用ASP,则MVP可能是一个易于迁移的选择,以帮助将视图与模型分离。
最后,我知道这不是被问到的问题,但MVVM可能是最好的选择。如果你有一个数据上下文,它提供了完全功能的绑定方法,可以绑定到其他类的属性和方法(例如WPF),那么你可以使用它。MVVM优于MVP,因为它减少了代码量,因此您不再需要维护视图接口。
我的帖子MVVM vs MVP vs MVC:解释差异 对此进行了更详细的解释。
http://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93controller
Model-view-presenter 是一种软件模式,被认为是 model-view-controller 模式的一个衍生。http://en.wikipedia.org/wiki/Model-view-presenter
所以,
MVC是一种设计模式。设计模式是一种代码结构,允许快速复制常见的编码框架。您可以将设计模式视为应用程序构建的骨架或框架。 MVC框架最明显的好处是它帮助您分离业务逻辑(数据库)和表示逻辑(设计)。
基本上:
模型包含与数据库和其他数据结构相关的所有代码。如果您有一个名为“页面”的表格,则会为其创建一个模型,并在其中创建用于选择、创建、更新和删除该表格中记录的函数,以及其他功能。
视图包含所有显示和UI元素,JavaScript代码,层叠样式表(CSS),HTML甚至PHP。
控制器将所有内容组合在一起。控制器中的每个函数都代表一个目标或路由。如果您有一个名为“/about”的目标,则您的控制器将具有一个名为about()的函数。基本上,控制器决定要运行哪个模型和哪个视图。这是视图和模型之间的契约。