我们一直在使用MVP模式和Winforms,并取得了相当大的成功。然而,关于MVP总是弹出一个问题:对于演示者来说,什么是好的粒度?我的意思是:对于Winforms,细粒度通常适用于用户控件。这样,在设计更复杂的GUI时,很容易重用用户控件并将它们用作构建block。但是,与演示者具有相同的(精细)粒度似乎是一个问题。一方面,粗粒度的演示者阻碍了使用“插件”控件的能力,并且它有点违反DRY原则:多个演示者通常需要实现相同的逻辑(填充例如,客户列表),它由多个更复杂的控件使用。另一方面,细粒度呈现器似乎限制了在不同情况下重用控件的能力。例如,编辑View有时可能需要立即保存客户;有时它需
我正在尝试从标准化为HL7V3CDA标准的XML文件中解析一些临床信息。XML文件:AmlodipineBesylate5mgLakeErieMedicalDBAQualityCareProductsLLCLakeErieMedicalDBAQualityCareProductsLLCAlkemLaboratoriesLimitedAmlodipineBesylateAmlodipineBesylateAMLODIPINEBESYLATEAMLODIPINECELLULOSE,MICROCRYSTALLINEANHYDROUSDIBASICCALCIUMPHOSPHATESODIUMS
使用MVP,构建和依赖注入(inject)的正常顺序是什么。通常,您为每个View创建一个展示器,然后将View传递给构造函数中的展示器。但是,如果您有:多个View需要监听事件的服务。多个View都指向同一个数据模型缓存。有人可以显示从用户点击到从服务器返回到服务中的数据的正常信息流吗? 最佳答案 这是我的做法:首先,我定义了这些接口(interface):publicinterfaceIView{TPresenterPresenter{get;set;}}publicinterfaceIPresenterwhereTView:I
关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。这个问题似乎与helpcenter中定义的范围内的编程无关。.关闭8年前。Improvethisquestion我正在努力思考C#/Winforms应用程序中使用的MVP模式。所以我创建了一个简单的“记事本”之类的应用程序来尝试计算出所有的细节。我的目标是创建一些东西来执行打开、保存、新建等经典Windows行为,并在标题栏中反射(reflect)已保存文件的名称。此外,当有未保存的更改时,标题栏应包含一个*。所以我创建了一个View和一个管理应用程序持久状态的展示器。我考虑过的一项改进是分解文本处理
MVP和MVVM有什么区别?为什么我们使用MVP,即使我们有三个层:业务、数据访问和表示?将Presentation层划分为MVP有什么具体原因吗? 最佳答案 MVP和MVVM都是MVC的衍生物。MVC是一种将用户表示和交互与内部表示分离的模式。这需要三层,因为将用户交互/呈现直接绑定(bind)到内部表示会导致两者弯曲以相互适应。在您的应用程序中,您将这些层描述为表示层、业务层和数据访问层。只有那些非常松散的描述,您才有可能描述任何MVC衍生产品,或原始MVC模式本身。每个导数之间的主要区别在于每一层对其他层的依赖性,以及它们之间
我目前正在从UI向下编写一个ASP.Net应用程序。我正在实现MVP架构,因为我厌倦了Winforms并且想要一些具有更好的关注点分离的东西。所以对于MVP,Presenter处理View引发的事件。这是我用来处理用户创建的一些代码:publicclassCreateMemberPresenter{privateICreateMemberViewview;privateIMemberTaskstasks;publicCreateMemberPresenter(ICreateMemberViewview):this(view,newStubMemberTasks()){}publicCr
我正在构建一个大型javascript应用程序,我决定使用NicholasZakas的可扩展应用程序架构设计:http://developer.yahoo.com/yui/theater/video.php?v=zakas-architecture根据他的系统,模块是自封装的并且彼此不知道......但是我在我的项目中遇到了许多实例,模块似乎有必要相互了解,因为它们本质上是,一个更大的整体的各个部分。例如..我有三个模块:上传、窗口和管理器。单击上传选项时,会打开一个带有上传表单的弹出窗口。窗口“管理器”上还有一个链接。单击管理器链接会更新弹出窗口以显示管理工具......这对我来说最
您的JavaScript代码是如何组织的?它是否遵循MVC之类的模式或其他模式?我从事一个业余项目已有一段时间了,我做得越深入,我的网页就越变成一个功能齐全的应用程序。现在,我坚持使用jQuery然而,页面上的逻辑正在增长到需要某种组织,或者我敢说,“架构”的地步。我的第一个方法是“MVC-ish”:“模型”是一个用助手扩展的JSON树View是DOM加上调整它的类Controller是我连接事件处理和启动View或模型操作的对象不过,我对其他人如何构建更强大的javaScript应用程序非常感兴趣。我对GWT或其他面向服务器的方法不感兴趣……只是对“javaScript+”的方法感兴
我知道如何使用MVC模型,但不知道如何使用MVP。我了解了它们之间的差异,但不知道如何实现。 最佳答案 区别是双重的:View是被动的并且不知道模型presenter(Controller)改变模型的状态,读取信息并将其传递给ViewpublicfunctionshowUsers(){//--snip$data=$accountManager->getUserDetails($from=10,$to=20);$view->bind('list',$data);//--snip}这将是演示者方法的一个简化示例。Here是一个古老的答案
关闭。这个问题是opinion-based.它目前不接受答案。想改善这个问题吗?更新问题,以便可以通过editingthispost用事实和引文回答问题.2年前关闭。Improvethisquestion编辑,2020/09:如果有人想知道,12年后,是的,我们现在都已经转向JSON和Kubernetes。原文如下。显然,没有一种解决方案可以满足所有人的需求。架构总是一种权衡。我想创建一个框架,最初是针对网页游戏的RAD。目标语言是PHP,虽然架构应该是广泛适用的。我为这个框架制定的目标是:实现结果的方式的灵active;为开发人员提供最大的舒适度;连接模块,如LEGO®积木;多种类型