工作宝
项目描述:工作宝是一个为政企打造的通讯办公客户端,有即时消息、网络音视频通话、通讯录、考勤请假、名片等功能。
责任描述:页面UI与逻辑功能实现,负责登录、最近会话、聊天消息、通讯录、名片业务模块开发
技术要点:
MVP+Dagger2,组织代码结构,构建数据、逻辑、视图三大元素
使用MVP模式将Veiw(Activity、Fragment、Adapter)层中的业务逻辑全部分离出来放到Presenter层处理,让View层只做UI相关的逻辑处理,Presenter层处理业务数据逻辑。
使用Dagger2通过依赖注入的方式来处理View层和Presenter层的依赖关系,将View层和Presenter层进行解耦,降低了耦合度,层级职责明确清晰。
佳米融信
项目描述:佳米融信是用flutter重构工作宝的跨平台客户端。有即时消息、网络音视频通话、通讯录、考勤请假、名片等功能,用flutter实现一套代码多端运行,成为跨平台多终端的融合通信客户端。
责任描述:架构设计、页面UI与逻辑功能实现,用flutter重构登录、最近会话、聊天消息、通讯录、名片功能模块
技术要点:
Flutter+GetX+MVVM搭建跨平台的app客户端
基于flutter+GetX+MVVM搭建跨平台客户端,将界面和逻辑代码解耦。让所有页面都可以用view层来写页面的界面,logic层来写页面的数据处理逻辑。用GetX的依赖注入,来处理view和logic之间的依赖关系,用Get.put()来将logic控制器注入为单例,用Get.find()来获取它们的实例,从而让view和logic之间关联起来。
用Getx中的obx或getBuild来完成view层和logic层之间数据状态双向绑定,从而实现界面和数据状态自动更新。Obx的重绘颗粒度较小,getBuild的重绘颗粒度较大,综合考虑性能和实际场景灵活运用这两种方式进行数据绑定。
用此套框架搭建的跨平台客户端,有清晰的代码结构,代码的耦合度低,可复用性高,可扩展性强,而且一套代码便可在多个平台运行,极大地提高了开发效率。