安卓&鸿蒙应用开发架构变迁

即将离职,简要总结下近几年学习安卓&鸿蒙开发架构,也许后期还会用上,选择合适的框架。

安卓应用:
阶段1: 最早期看的很多安卓应用课程,都是每个页面是一个activity,通过xml布局+java业务,通过findViewById找到界面元素,并操作对象属性和事件。在源 Activity 的某个事件处理方法(如按钮点击事件)中创建 Intent,并调用 startActivity() 方法启动目标 Activity。使用AsyncTask&Handler解决在非UI线程执行耗时操作。
阶段2: 引入constrainlayout相对布局简化界面布局。
阶段3: 引入了livedata+viewbinding+databing+MVVM: 在xml中引入<data>,在java中自动获取绑定对象,并与vm的数据绑定。 --个人业余时间做的"修车项目"采用的是这个架构,后续有机会再用后续的架构来尝试,当时记得是从谷歌的一个todolist框架里选出来的(含mvc/mvp/mvvm多个架构)。
阶段4: 引入navigation调用,采用单activity,并通过navigation在多个fragment中跳转
阶段5: java-->koltin ,并使用Kotlin 协程解决耗时操作。 -- 个人学习课程:https://www.bilibili.com/video/BV1Ap4y167gV 代码:https://github.com/stevdza-san/To-Do-App-Kotlin
**阶段6:**引入jetpack compose,使用声明式语法开发组件,把fragment换成@composeble组件 --待学习课程:https://www.bilibili.com/video/BV1ZV4y1y7KN

鸿蒙应用:
阶段1: 双框架java版本ability
阶段2: 类web范式
阶段3: FA ets声明范式
阶段4: Stage artkTS声明范式,线程隔离,taskpool --个人学习到这个位置(HarmonyOS 5.0/5.1)
**阶段5:**artkTS+

相关推荐
贾伟康1 小时前
【时光清单|19】HarmonyOS ArkTS 回归测试实战:覆盖启动、空数据、异常输入和重复点击
软件测试·harmonyos·arkts·回归测试·hypium
AFinalStone2 小时前
Android 7系统无障碍服务(五)AccessibilityNodeInfo 的构建与查询
android·无障碍服务
坚果的博客2 小时前
Flutter OHOS 环境搭建实战:oh-3.44.9-dev 从 0 到 1 完整记录
flutter·华为·harmonyos
坚果的博客2 小时前
认识 CPF-RN:React Native 鸿蒙官方社区与四大核心仓库
react native·react.js·harmonyos
今天要早睡_2 小时前
C++ 核心语法速过:命名空间、引用、函数重载与 nullptr 深度解析
android·java·c++
啦啦啦~~~2223 小时前
PC端+安卓端阅读器推荐!开源本地小说阅读器软件,
android·论文阅读·windows·开源软件·福昕阅读器
大雷神3 小时前
HarmonyOS ArkGraphics 2D可变帧率实操——同屏对比30、60和90 FPS动画
华为·harmonyos
OH_TPC3 小时前
【鸿蒙优选三方库】@react-native-ohos/react-native-fast-image:高性能图片加载与缓存组件
缓存·华为·harmonyos·鸿蒙
我命由我123454 小时前
Android Jetpack Compose 开发问题:Unresolved reference ‘Icons‘.
android·java-ee·kotlin·android studio·android jetpack·android-studio·android runtime
爱笑鱼4 小时前
Android 系统启动机制(六):Zygote 创建 App 为什么走 Socket?哪些是源码事实,哪些是架构解释?
android·linux