在大学期间,从开发SO开始,我就听说了很多关于Model-View-Controller的架构devise模式。 甚至在我知道它是什么之前,我无意中使用了MVC模式,并且仍然在我的日常工作中使用它。 从我所看到的,这可能是今天使用的最stream行的模式。 但是我还没有听说太多,可以使用替代模式来代替MVC。 有什么select,为什么你决定通过MVC使用它们? 我也很有兴趣知道他们所使用的典型系统的types。 最后,使用它们的优点和缺点是什么?
我将开始一个Java项目来开发一个桌面应用程序。 什么用作表示层模式(MVC,MVP,MVVM或….)? …如果可能的话,用一些小小的例子… 🙂
我已经玩了几个星期的MVP模式,我已经到了需要上下文来启动service和访问Shared Preferences的地步。 我已经读过,MVP的目的是从逻辑上分离视图,并且在Presenter拥有context可能会打败这个目的(纠正我,如果我错了的话)。 目前,我有一个看起来像这样的LoginActivity: LoginActivity.java public class LoginActivity extends Activity implements ILoginView { private final String LOG_TAG = "LOGIN_ACTIVITY"; @Inject ILoginPresenter mPresenter; @Bind(R.id.edit_login_password) EditText editLoginPassword; @Bind(R.id.edit_login_username) EditText editLoginUsername; @Bind(R.id.progress) ProgressBar mProgressBar; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_login); MyApplication.getObjectGraphPresenters().inject(this); mPresenter.setLoginView(this, getApplicationContext()); } @Override public void onStart() { mPresenter.onStart(); ButterKnife.bind(this); super.onStart(); } @Override public void […]
我最近在一个.Net WPF项目上工作,build立了一个零售销售点系统,我首次使用了MVP模式。 我花了一点时间把我的头围绕着方法的变化,但是一旦我做到了,我就认为这个概念震撼了! 我的问题是:MVC,MVP和MVVM有什么区别? 如果有一个明确的区别,是否有指导方针,以什么时候应该使用一种模式而不是另一种模式? 如果任何人都可以提供这方面的指导,或指出解释差异的文章,我会非常感激。
有人可以请尽可能简单地解释模型视图展示器模式是什么? 与Model View Controller有什么不同? 哪个最好或为了哪个目的?
如果我们使用“MVC,MVP和MVVMdevise模式有什么区别”这个短语来searchGoogle,那么我们可能会得到一些理论上讨论MVC MVP和MVVMdevise模式之间差异的URL MVP 在无法通过数据上下文进行绑定的情况下使用。 Windows Forms就是一个很好的例子。 为了从模型中分离视图,需要演示者。 由于视图不能直接绑定到演示者,信息必须通过接口(IView)传递给视图。 MVVM 在可以通过数据上下文进行绑定的情况下使用。 为什么? 每个视图的各种IView接口被删除,这意味着更less的代码来维护。 MVVM可能的一些例子包括使用Knockout的WPF和javascript项目。 MVC 在视图和程序其余部分之间的连接不总是可用的情况下使用(并且不能有效地使用MVVM或MVP)。 这清楚地描述了Web API与发送到客户端浏览器的数据分离的情况。 微软的ASP.NET MVC是pipe理这种情况的一个很好的工具,并且提供了一个非常清晰的MVC框架 但是我还没有find一篇单独的文章,在理论上与样本代码讨论差异。 如果我得到一篇文章讨论这三种devise模式(MVC,MVP和MVVM)与代码之间的区别,那将是非常好的。 我想了解一下这三种devise模式(MVC,MVP和MVVM)实现的3个类似的CRUD应用程序的源代码。 所以我可以通过代码,了解如何为这三个devise模式(MVC,MVP和MVVM)编写代码。 所以,如果有任何这样的文章存在,讨论如何代码看起来不同的这三种devise模式(MVC,MVP和MVVM),那么请redirect我的文章。
我正在尝试使用WinForms首次实现MVP方法。 我想了解每一层的function。 在我的程序中,我有一个GUIbutton,点击时打开一个openfiledialog窗口。 因此,使用MVP,GUI处理button单击事件,然后调用presenter.openfile(); 在presenter.openfile()中,是否应该将该文件的开放委托给模型层,或者由于没有要处理的数据或逻辑,是否应该简单地处理请求并打开openfiledialog窗口? 更新:我决定提供一个赏金,因为我觉得我需要进一步的帮助,最好是针对我下面的具体要点,以便我有背景。 好吧,在阅读MVP之后,我决定实施被动观点。 实际上,我将在Winform上有一堆控件,由Presenter处理,然后委托给Model(s)。 我的具体观点如下: 当winform加载时,它必须获得一个树形视图。 我认为视图应该调用一个方法,如:presenter.gettree(),这反过来将委托给模型,它将获取树视图的数据,创build并configuration它,返回到主持人,这反过来会传递到视图,然后将其简单地分配给一个面板? 这将是相同的任何数据控件的Winform,因为我也有一个datagridview? 我的应用程序,有相同的程序集的许多模型类。 它还支持插件体系结构,需要在启动时加载插件。 该视图是否会简单地调用一个演示者方法,然后调用一个方法来加载插件并在视图中显示信息? 然后哪个层将控制插件引用。 视图是否会引用他们或主持人? 我是否认为视图应该处理关于表示的每一件事情,从treeview节点的颜色,到datagrid的大小等? 我认为他们是我主要关心的问题,如果我理解这些stream程应该如何,我想我会没事的。
是否有很好的示例代码或用于解释Model-view-Presenter(MVP)模式的testing项目。 有很多的解释链接,但我想有一些很好的示例代码来显示其他人,而不是重新发明轮子。