要不要学鸿蒙ArkUI开发?

搭建环境

我不想像别的文章那样详细地告诉你需要一台电脑,需要从官网下载DevEco Studio编辑器,需要next、next安装,还需要下载nodejs、Ohpm以及SDK。毕竟我们处于一个很卷的时代。
  如果你喜欢追求最新版本,并且你已经安装好了nodejs,好吧,你被恶心到了,它对nodejs的版本有要求,所以推荐直接在设置里面安装。为什么要安装nodejs呢,因为ArkUI是基于ArkTs语言的,而ArkTs是基于ts语言的。所以不仅要安装,还要先于SDK安装。至于Ohpm,它是华为的一个依赖管理工具。此外,对于我们应用开发工程师,主要是harmonyOS,而OpenHarmony比较偏向底层。

HelloWorld

万事俱备,开始HelloWorld吧,我仍然不会告诉你怎么创建,但我会告诉你不知道的就用默认的。
  比如那个Model不知道选择Stage还是FA,那就用默认推荐的Stage。本身就已经跟不上时代的步伐了,你再去了解FA这些还没学就过时的东西纯属浪费时间。再比如它下面的Enable Super Visual,其实就是一个将可视化编辑的内容转为ets文件的功能,对于喜欢拖拽控件的来说比较适合,但我总感觉没有代码写出来的准确。
  好吧,项目创建出来了,是不是该运行到模拟器了呢?别急,你先来体验一把Previewer,其实如果你做过Compose开发,你不会奇怪它相比于AndroidView的xml预览它居然能响应点击等事件了。最后,新建模拟器并运行。

目录结构

ArkUI目录结构大致可以分为三部分

AppScope

主要用于存放公共的信息和资源,比如字符串、布局文件、多媒体、全局信息配置等。
  配置文件采用的是json和json5,既然它抛弃了java采用ArkTs开发,其实就可以猜到会采用json配置了,我之前做过一段时间uni-app开发,所以对于这种配置也没啥新鲜感了。

entry

entry稍显复杂,ets下有两个目录分别存放Ability文件和ArkTs文件,比如默认的Index页面。resources显然是用来存放当前模块下的资源文件,经常用到调试的还可以关注下ohosTest测试文件夹,至于其它的,基本上都是些配置文件。

其它

oh_modules是项目的依赖包,存放工程依赖的源文件,它都直接标黄了,一般不用管。
  根目录的其它文件基本上都是些配置文件,或者脚本。再其它没介绍到的也是基本上不用管的,有好奇心是应该的,但是把时间浪费在用不到的知识上是非常不推荐的。

Hello工程里面的几个文件

…/AppScope/app.json5

至于AppScoped中的另外几个文件具体的内容就不一一介绍了,相信你一眼就能明白,其实app.json5里面也没啥特别的,唯一一个新词语就是vendor供应商,写自己公司名称就得了。当然还有其它一些没有在hello工程里面体现的可以去文档查看。

…/entry/src/main/ets/entryability/EntryAbility.ts

它继承自UIAbility,它对应于最近任务列表中的任务。而我们以前安卓开发时,一般情况下一个应用在任务列表只会出现一个,而UIAbility可以出现多个,一个UIAbility也是对应多个页面而不是照搬Activity。
  UIAbility也是一个具有生命周期的系统调度的单元,我将Hello工程的该文件代码方法顺序按生命周期执行顺序做了调整,并添加相应的注释如图。

…/entry/src/main/module.json5

我们都知道,不管是什么程序,它都应该会有一个入口,之所以程序会执行到上面的EntryAbility文件中,就是该module.json5进行配置的,类似于安卓开发的清单文件。
  至于内容,一眼就能猜到是啥,猜不到的我稍后会把官方文档地址发出来。
  不要一听到文档就嫌弃。可能是因为以前见到的很多官方文档都是翻译过来的,由于翻译水平或者个人能力原因,读起来有些枯燥无味,但鸿蒙系统毕竟是国人开发的,所以还是比较容易理解的。至于重点,目前做鸿蒙应用开发的大多数都是安卓转过来的,所以哪些是重点,哪些是开发中常用的都是知道的。

…/entry/src/main/ets/pages/Index.ets

千呼万唤始出来,终于到了小白最关心的页面部分了,文章也接近了尾声。我虽然没学过ArkTS,不知道@Entry、@Component、@State这些叫做装饰器,也不理解struct Index定义了一个自定义组件,也不知道ArkTS的具体语法。但我毕竟学过Compose开发和flutter开发,一眼就知道它想做的同一件事儿就是:“抛弃传统的xml布局,直接在代码中声明和展示”。
  当然对于这种新的开发方式,就更应该注重架构、设计模式等的设计,否则当业务复杂时,可能一个文件承担的功能太多。
  至于语法之类的内容,等你打算好了入坑再慢慢学吧,最后贴几张Compose、flutter的UI做个对比。

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数HarmonyOS鸿蒙开发工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年HarmonyOS鸿蒙开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上HarmonyOS鸿蒙开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新

如果你觉得这些内容对你有帮助,可以添加VX:vip204888 (备注鸿蒙获取)
img

一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

UPMK-1712911648718)]

一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 4
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值