作为一个从事代码开发近20年的程序老兵,最近几天关注了华为鸿蒙开发者课堂的教学视频。看了几期入门教学视频后,感觉内容和教学顺序排布非常不合理。违反了最基本的认知规律。这些免费入门教学,非常不专业,看上去完全是没有教学经验的人给出的教学视频。

打开网易新闻 查看精彩图片

违反认知规律

违反认知规律

作为应用开发的技术教学,HarmonyOS简介更应该从操作系统底层实现来讲解,但视频内容更像一个业务员在通过应用场景推销HarmonyOS。这种介绍方式,让一个即将要进入鸿蒙开发的技术人员听起来完全没有觉得这是有用知识。也就是说,明明是技术课堂,却听你讲了一大堆销售场景。

打开网易新闻 查看精彩图片

接下来的课件就显得更加离谱了,因为我们普通的认知规律一定是由外而内的。啥叫由外而内呢,就是先看到表象,由表及里的逐层次加深认知和理解。而鸿蒙免费开发教学课件的内容上来先给你讲解了Text(文本控件)、InputText(文本输入控件)、Button、Image四个控件的简单使用。看完这几期视频后,你能够学会在界面上放一堆凌乱的Image、Text、InputText、Button控件。

布局控件Column
打开网易新闻 查看精彩图片
布局控件Column

为什么说这种教学顺序是十分凌乱的、违反认知规律的呢。因为正常情况下的编程教学,它也是由外及内的。因为前面所说的Image、Text、InputText、Button这些控件是常用控件,但前提是这些控件不是单独使用的,它们一定是在布局控件的内部使用的。那么正确的教学顺序就有了,那就是先教学习者布局控件Column、Row。接下来教List、Grid、Tab等控件,有了这些控件的学习,至少你可以学会如何构建一个十分规整的页面。你可以把这种布局控件的学习放在一个课时里,也可以分两个课时来讲解。

布局控件是入门的第一课
打开网易新闻 查看精彩图片
布局控件是入门的第一课

到了这里,我们已经给房子搭好了地基和框架,接下来就可以装修我们的房子了。这个时候就是该Text、InputText、Image、Button控件上场了,这些控件就相当于装修房子的砖块,用来砌出各式各样的所需房间。如果没有对布局控件有基本的认识和学习,你无法构建出上图控件排列整齐的界面。

打开网易新闻 查看精彩图片

漂亮的页面,都需要对布局组件的熟练应用。所以,在开发教学上,还是需要从布局开始的。因为布局本身不涉及到业务逻辑编程,也就是不涉及到功能性编程,所以这与开发语言教学并不冲突。学会了利用布局控件搭建基本的页面后,再进行程序教学就会变得更加专业和专一了。

教学应该是层层深入的过程

教学应该是层层深入的过程

在华为鸿蒙开发教学视频中,介绍控件的时候,总感觉是浅尝辄止,欲说还休。比如讲解Button控件,并没有针对这个按钮控件展开详细的属性、应用场景、样式变换等其他编程语言常见的教学内容进行展开,而是简单地说这个是按钮控件,可以响应一些事件,比如页面跳转。然后,就没有然后了。

这些控件的属性才是最有用的知识
打开网易新闻 查看精彩图片
这些控件的属性才是最有用的知识

这对于初学鸿蒙开发的人员来说是一个严重的打击,因为忙活了半天,不但界面没办法排布得美观大方,放个按钮又没办法让它响应常见的操作。这就让初学者感觉,学了半天就学了个寂寞,看啥啥凌乱,点啥啥不动。

作为初学者还是需要先学会轮廓
打开网易新闻 查看精彩图片
作为初学者还是需要先学会轮廓

其他编程语言开发课程,在教学过程中往往会放置一些示例代码,让初学者哪怕是Copy完代码,也可以运行,点哪哪动,很有成就感。这样能够鼓励学习者继续学习,激发学习者的兴趣。

太碎片化,不够系统,盲人摸象
打开网易新闻 查看精彩图片
太碎片化,不够系统,盲人摸象

说得直白点,华为鸿蒙开发者社区的视频教学非常碎片化,缺乏系统性。所以对于完全没有程序开发经验的初学者来说很容易让视频内容给绕懵圈,乃至于学不下去。

值得表扬的地方

值得表扬的地方

华为鸿蒙开发教学视频可能是因为华为内部不同的部门不同的人不同的时间点出的视频,所以显得很凌乱,没有系统性。但这并不影响华为鸿蒙开发采用ArkTS这种基于TypeScript的脚本语言是多么的友好。

华为鸿蒙开发者后台
打开网易新闻 查看精彩图片
华为鸿蒙开发者后台

TypeScript(简称TS)是JavaScript(简称JS)的超集,或者反过来说JS是TS的子集。因为TS是在JS的基础上扩充而来,也就是说TS涵盖了JS的所有功能。这是什么意思呢,就是说基本上所有做过H5网页开发的人员,都能够很轻松地学会使用ArkTS开发鸿蒙应用,因为ArkTS是鸿蒙主推的开发语言。你可以像开发网页那样去开发鸿蒙应用,也可以像开发微信小程序那样去开发鸿蒙应用。为了方便记忆,你甚至可以把ArkTS就当成JS来使用。当然,具体到鸿蒙平台的时候,ArkTS会有一些专门的语法定义。

打开网易新闻 查看精彩图片

尽管HarmonyOS支持Java和C++语言开发,就像在安卓上使用的开发语言一样,但鸿蒙开发华为主推的是ArkTS。使用ArkTS的目的很明确,就是让鸿蒙开发变得更加容易,所见即所得。大量的控件和底层逻辑由鸿蒙系统完成,让开发者更关注页面布局和业务逻辑,而不是把精力放在如何跟HarmonyOS底层打交道。

给学习者的一些建议

给学习者的一些建议

作为一个程序老兵,学习鸿蒙开发基本上没有任何障碍。这些学习视频也没必要从头到尾一一观看,因为很多内容其实在学习H5以及JS的时候,我们已经深刻理解过了。尤其是对那些十分有经验的开发人员来说,想学习鸿蒙开发,学习成本还是很低的。

打开网易新闻 查看精彩图片

对于初学者,我认为你可以按照本文提供的学习思路来展开你的学习。先对鸿蒙系统有一个基本认识,当然我说的认识是,你认识HarmonyOS9个字母足够了。因为鸿蒙开发采用ArkTS就注定了你不必关心鸿蒙底层怎么运作。你想了解也没用,因为视频教学不讲这些。想要了解,你需要去下载和阅读OpenHarmony源代码。从布局控件Column、Row开始,然后是List和Grid,接下来是Image、Text、InputText、Button、ImageButton等控件。然后是页面的过渡、渲染、动画等内容。

打开网易新闻 查看精彩图片

如果你能够熟练地对页面布局和过渡,你就需要认真学习ArkTS语言了。当然,如果你有十分丰富的JS使用经验,比如Jquery、Vue、Angular等,你完全可以跳跃性有针对地学习ArkTS。这样能够提高你的学习速度和效率,而不必把时间消耗在已知内容上。

打开网易新闻 查看精彩图片

鸿蒙系统的生态发展十分迅速,鸿蒙开发将会是一个非常值得深入的新的开发方向,因为它能够成就你智慧物联网时代的高效开发:一次开发,多端部署。目前,各互联网大厂都在热招鸿蒙开发人员。别的不说,看在高薪的份儿上,学习鸿蒙开发也是值得的。

举报/反馈