gpt4 book ai didi

安卓 MVP : is it just an excuse to enable testing?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:22:31 25 4
gpt4 key购买 nike

<分区>

老实说,我无法理解所有这些 MVP 和与 Android 相关的类似内容:它的真正意义是什么?

到目前为止,我认为在 Android 中使用 MVP 的唯一实际原因是从框架类(即 Activities、Services、Fragments...)中“提取”可单元测试的代码 fragment ,否则很难(或不可能) ) 进行测试。

这很好,但这样一来,Activity(和其他框架类)最终会在可能的情况下(即在处理与框架无关的代码时)将工作委托(delegate)给演示者,而在没有的时候直接进行工作。因此,Presenters 最终看起来有些奇怪,因为它们具有反射(reflect) Activity 生命周期方法(onStart、onResume、clickListeners ...)的方法。我想知道这是不是代码味道?

最重要的是,我看到了大量用于构建 MVP Android 应用程序的库/模式,但老实说,我看不到它们的真正好处:让每个 Activity 手动创建和管理自己的 Presenter 有什么缺点?我认为将 Activity 和 Presenter 彼此解耦没有任何好处,因为 Presenter 只是从 Activity 中“提取”一些代码,根据定义它将与其紧密耦合,只要 Presenter 对我来说这听起来很好仅包含严格的表示逻辑(其余业务逻辑应进入对 View/Presenter 二重奏一无所知的专用类)。

我觉得这个话题有点迷茫,我想就这个问题发表一些其他意见,以获得更广阔的视角。

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com