标签: mvp

用什么?MVC,MVP或MVVM还是......?

我将启动一个Java项目来开发桌面应用程序.什么用作表示层模式(MVC,MVP,MVVM或....)?

......如果有可能,用一些工作小例子...... :-)

java model-view-controller mvp mvvm

36
推荐指数
1
解决办法
2万
查看次数

具体代码MVP示例

有人可以提供MVP的具体(实际Java代码)示例吗?

这将包括以下3种类型以及它们如何调用彼此的方法来实现模式和处理/响应客户端响应:

  • 模型 - 某种价值对象(VO)
  • 视图 - 表示或生成UI
  • 演示者 - 业务逻辑

java mvp design-patterns

36
推荐指数
1
解决办法
4万
查看次数

如何在没有Dagger的MVP中使用共享首选项并且不会导致Presenter依赖于上下文?

我正在尝试在没有Dagger的情况下实现MVP(用于学习目的).但我遇到了问题 - 我使用Repository模式从缓存(共享首选项)或网络获取原始数据:

Shared Prefs| 
            |<->Repository<->Model<->Presenter<->View
     Network|
Run Code Online (Sandbox Code Playgroud)

但要把手放在共享首选项上,我必须把它放在某个地方

presenter = new Presenter(getApplicationContext());
Run Code Online (Sandbox Code Playgroud)

我使用onRetainCustomNonConfigurationInstance/ getLastCustomNonConfigurationInstancepair来保持Presenter"保留".

public class MyActivity extends AppCompatActivity implements MvpView {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        //...
        presenter = (MvpPresenter) getLastCustomNonConfigurationInstance();

        if(null == presenter){
            presenter = new Presenter(getApplicationContext());
        }

        presenter.attachView(this);
    }

    @Override
    public Object onRetainCustomNonConfigurationInstance() {
        return presenter;
    }

    //...
}
Run Code Online (Sandbox Code Playgroud)

那么如何在没有Dagger的MVP中使用共享首选项并且不会导致Presenter依赖于上下文?

mvp dependencies android dependency-injection sharedpreferences

36
推荐指数
1
解决办法
1万
查看次数

模型 - 视图 - 控制器有哪些替代方案?

在经历大学和跟踪SO的发展时,我听到了很多关于模型 - 视图 - 控制器架构设计模式的知识.我甚至在我知道它之前就无意中使用了MVC模式,并且仍然在我的日常工作中使用它.从我所看到的,它可能是今天使用的最流行的模式.然而,我没有听到太多关于可以使用的替代模式而不是MVC.有哪些选项,以及您决定在MVC上使用它们的原因是什么?我也有兴趣了解它们常用的系统类型.最后,使用它们的优点和缺点是什么?

model-view-controller mvp architectural-patterns passive-view

34
推荐指数
2
解决办法
6442
查看次数

在MVP中写入验证的位置

在Model-View-Presenter模式中,我们应该在哪里编写用户输入的验证.

mvp

33
推荐指数
1
解决办法
5540
查看次数

Android MVP从Presenter打开Activity,反模式?

如果从Presenter层打开一个反模式,它会是一个反模式Activity吗?

如果是这样,我应该从视图层管理应用程序的导航吗?

mvp android

32
推荐指数
3
解决办法
1万
查看次数

Model-View-Presenter中的Presenter是否会创建视图?

如何在MVP中创建视图?Presenter是否始终创建它们(除了子视图的视图外)?或者它是一个单独的第三方组件或应用程序或创建它们的东西?

我们还要补充一点,我可能会在Dojo Toolkit/ExtJS(即JavaScript)上执行此操作.

所以,我有这些代码行:

var v = new MyApp.view.User();
var p = new MyApp.presenter.User();
Run Code Online (Sandbox Code Playgroud)

这两条线应该在哪里准确?演示者是否实例化视图,反之亦然?什么实例化第一个实例?

theory mvp architectural-patterns

30
推荐指数
2
解决办法
8119
查看次数

Android MVP - 应避免在演示者中使用R.string引用吗?

为了完全将Android SDK与我的演示者类分离,我试图找出避免访问我们通常使用R的资源ID的最佳方法.我以为我可以创建一个接口来访问字符串资源之类的东西,但我仍然需要ID来引用字符串.如果我要做的事......

public class Presenter {
    private MyView view = ...;
    private MyResources resources = ...;

    public void initializeView() {
        view.setLabel(resources.getString(LABEL_RES_ID);
    }
}
Run Code Online (Sandbox Code Playgroud)

我仍然需要LABEL_RES_ID,然后将其映射到R.string.label我的资源桥.这很酷,因为我可以在用其他东西进行单元测试时将其换掉,但我不想管理另一个到字符串值的映射.

如果我放弃并只使用R.string值,我的演示者将再次绑定到我的视图.那不理想?是否有一个更容易的解决方案,人们用来解决这个问题,以使他们远离主持人.我不想以超出Android提供的方式管理字符串,因为我仍然希望将它们放在布局文件中并获得国际化等的好处.我想做一个可以与这个演示者一起工作的哑单元测试无需Android SDK即可生成R.java文件.这要问太多了吗?

testing mvp android presenter

29
推荐指数
2
解决办法
9148
查看次数

android模型视图演示者/控制器示例

有没有关于如何最好地在任何地方构建Android应用程序的好例子或教程?

我是java和android的新手,我在asp.net中使用模型视图演示器和模型视图控制器的被动和监督控制器变体构建了winforms应用程序,但没有真正看到任何使用这些模式的android上的示例或代码.

人们如何在野外构建体面大小的Android应用程序.有没有最好的做法,或者我应该严格坚持官方的Android文档.

java model-view-controller mvp android design-patterns

28
推荐指数
1
解决办法
3万
查看次数

使用Javascript框架的MVP模式?

有没有人能够用任何JavaScript框架实现MVP模型?我无法弄清楚如何让演示者 - >从服务器代码到javascript的视图反转.我有一些想法,但有点hackish,并希望看到别人在做什么.

javascript mvp

27
推荐指数
3
解决办法
2万
查看次数