上次吐槽鸿蒙仍是一月份,api 升了两个版别之后,一些大众呼声很高的点如同仍是没有什么改变。

没有那就没有吧,你就说能不能用吧!但肯定仍是期望未来的版别能够带来一些更加有用的修改。

年前快速阅读了一遍 《JavaScript 高档程序设计》,年后回来开端对公司项目进行鸿蒙化,又多了一些感悟,记载一下。

语言挑选

假如不是因为 Java 版权问题的话,我实在想象不出挑选 JavaScript 的理由是什么。

JavaScript 开发生态好?我想 Java/Kotlin 在移动端范畴的生态毫无疑问更好。

JavaScript 开发者更多?事实上更多情况是安卓开发来转型鸿蒙。

ArkTs,里子是 JavaScript,然后努力披上 Java 的壳子。给前端开发带上强类型的枷锁,让移动端开发认为是自己认为的强类型,给两边都不同程度的带来了必定的了解障碍。

但既然现已选定了 ArkTs,仍是得去习惯。

假如你是移动端开发,未曾接触过 JavaScript 的话,仍是建议简单阅读《JavaScript 高档程序设计》的第 3 章 语言根底,第 8 章 对象、类与面向对象编程,第 11 章 期约与异步函数。因为官网的 ArkTs 语法文档过于简陋,没有 JavaScript 语法根底的话,在一些问题上会比较迷茫。

比如,假如你不知道 ES6 中函数的参数列表实际上便是一个 arguments 数组,根本没有函数签名的说法,你就无法了解 ArkTs 为什么没有函数重载。

假如你不知道 ES6 中 object 的含义,面临遇到的 is not callable 反常就束手无策。

关于前端来说,也是需要彻底改变开发思想,抛弃动态类型,避免运用 object,而是尽量运用 class,强类型。

虽然看起来没有多大期望了,假如鸿蒙能够支撑 Kotlin,该是一件多么美好的事情。

开发效率

毫无疑问,不考虑一些八怪七喇的问题的话,鸿蒙的 UI 开发效率远高于 Android View 体系的原生开发。

得益于 声明式 UI状况办理,能够完成纯天然的 MVVM。那么,谁不天然呢?你肯定都知道。

看个最简单的登录页面的示例。

View 自身不持有任何状况,仅仅根据 VM 供给的数据进行烘托。

再聊聊鸿蒙

VM 负责处理具体的业务逻辑。

再聊聊鸿蒙

除了最常用的 @State,ArkUI 供给了丰富的状况办理的装修器,来满足各种需求。

再聊聊鸿蒙

后续再来细盘一下这些装修器。

API 挑选

可能有许多同学在纠结从 API 9 到 API 11 的跨度问题,忧虑改变太大导致做许多无用功。

改变能够说大,也能够说不大。整体架构,核心思想,包含组件的根本运用,肯定是没有太大差异的。首要的改变在于 ArkTs 语法的编译期查看,大大增强了强类型查看。假如之前写的比较随意,可能得花点精力来修改。

OpenHarmony 的官网很早也就给出了部分适配规则,详见 从TypeScript到ArkTS的适配规则

假如预备上手鸿蒙,又没有最新 API 的话,个人觉得是没有太大问题的,能够冲。

一季度最终一个月了,期望华为官方也能够提一提进度,保障一下广阔程序员的开发者体会。