Android客户端架构 | 青训营笔记

64 阅读1分钟

这是我参与「第四届青训营 」笔记创作活动的第4天。

计算圈复杂度!用来衡量代码质量。 image.png

技术债和重构的概念?
可以有最佳方案但没有使用。重构是在不改变可观察行为的条件下,调整软件内部结构,可以是很小的改动 比如方法更名、封装方法、一般化类型等。

方法参数过多的解决方法:将参数封装,通过函数调用传递参数。 超长函数、晦涩逻辑:提取方法,新建小的子函数。

客户端常用架构

MVC: Model, View, Controller
image.png

MVP: Model, View, Presenter
image.png

MVVM: Model, View, ViewModel

image.png

image.png

image.png

image.png

  • 视图模型

  • 视图模型是暴露公共属性和命令的视图的抽象。MVVM没有MVC模式的控制器,也没有MVP模式的presenter,有的是一个绑定器。在视图模型中,绑定器在视图和数据绑定器之间进行通信。

  • 绑定器

  • 声明性数据和命令绑定隐含在MVVM模式中。在Microsoft解决方案堆中,绑定器是一种名为XAML的标记语言。绑定器使开发人员免于被迫编写样板式逻辑来同步视图模型和视图。在微软的堆之外实现时,声明性数据绑定技术的出现是实现该模式的一个关键因素。 [1]

image.png

端智能是什么==?

把机器学习、深度学习算法模型应用和部署到端设备上。这里的端设备是相对于云服务而言的,可以是手机,也可以是物联网IoT设备。

端智能的流程? image.png