“刚大四,三年鸿蒙开发经验”

这个周末,已经工作近十年的我参加了”鸿蒙生态学堂校园行“活动,地点在华为上海练秋湖研发中心,一个既像科技小镇又像江南水乡的“现代社区”,唯独不像是上班的地方。

本以为这个活动只是给学生们科普下鸿蒙系统的发展历史,没想到学生里卧虎藏龙,还没毕业就有了三年鸿蒙开发经验,在会场大秀自己的开发的APP,让我好生羡慕,我在大学时只会用C语言写个走马灯。

整个活动下来我的感受是,鸿蒙尽管在网上有诸多的争议,比如应用太少,功能不全等,但鸿蒙一直在真刀真枪、真金白银的去解决问题,比如降低应用开发门槛,培养年轻开发者,举办各种HDC活动等,而且从我在现场试玩鸿蒙各种设备的体验来看,鸿蒙并不是简单的去走IOS、安卓的老路,而是想做连接“万物”的大生态、大系统。

1、鸿蒙和学生都是“向阳而生”的

这次活动有个关键词是“向阳而生”,这可以理解成鸿蒙作为一个全新操作系统所拥有的朝气和创新,就像这次来的大学生开发者一样。

我从现场华为鸿蒙技术专家的介绍中找到了几个值得说道的亮点,其实也代表着鸿蒙的发展方向。

首先,鸿蒙应用相比IOS、安卓的开发难度低很多,对开发者非常友好。

它支持一次开发、多端部署,不需要你在手机、平板、手表等不同设备开发多套代码,而且DevEco Studio开发工具、 ArkTS编程语言也为提升开发效率做了很多优化,主打一个”简单“,哪怕你是刚进校门的大一学生也可以快速入手。

其次,鸿蒙把跨设备互联作为核心能力,通过华为分享、碰一碰、音视频投播、键鼠共享等功能,可以让用户在几十种鸿蒙设备中丝滑切换,极大的降低设备间的互动壁垒。同时鸿蒙在开发端的分布式系统框架,也让开发者享受便利。

最重要的是,鸿蒙把AI大模型和智能体装进了操作系统,以系统层级的元服务为应用提供各种AI能力,比如小艺智能体,可以直接让它打开应用、放歌、买东西、订酒店、写PPT,这底层是各种Agent、MCP、LLM的协作,而鸿蒙系统则是指挥它们的大脑,这比一般的Chatbot APP拥有更多资源调动的能力。

活动里有个最精彩的环节,大学生开发者优秀代表介绍自己在校园里开发的鸿蒙APP,其中有的下载量已经破万,还有的拿到了几百万的天使投资,在校园里开始创业。

我印象比较深的,有位山东大学的本科生开发了一款表情包分享应用,因为他是表情包重度使用“患者”,所以为了更好的管理表情包,做了这款APP。它利用鸿蒙原生AI进行表情包的裁剪和搜索,然后通过applink实现快传,从达到了对表情包进行编辑、管理、分享的目的,广受表情包爱好者们欢迎,确实解决了实际问题。

这位学生并不是程序员,之所以能一个人捣鼓出一款APP,还是在于鸿蒙开发确实容易。

还有位复旦大学的博士生,他和团队做了一款内容版权水印的APP,现在已经商业化,拿到了投资,要知道他是从土木转开发的,所以一切皆有可能。

2、打破门槛,谁都可以成为鸿蒙系统开发者

从这次活动看到的案例来说,鸿蒙确实把APP开发难度从遥不可及的“神坛”上拉了下来。

怎么做到的呢?我理解有3大因素,分别是开发工具、编程语言和分布式架构。

开发友好的DevEco Studio

了解鸿蒙的都知道,DevEco Studio是其集成开发环境(IDE),它的特点是一站式、低代码、可视化、组件丰富,能适配各种环境,所以大大降低了开发难度。

我记得活动中有个学生对比了鸿蒙和其他开发平台的特点,能很好的印证这点。

DevEco Studio是基于IntelliJ IDEA平台构建的,所以它界面很友好,集成了代码编辑、编译构建、调试调优、应用打包、设备模拟等APP开发所需的所有功能。

在开发者关心的代码编辑友好度上,DevEco Studio也是应有尽有,什么智能代码补全、语法高亮、代码重构、错误检查、远程设备调试、设置断点、查看变量值、分析调用栈等,市场是主流IDE该有的功能它一样不缺。另外,DevEco Studio还内置了性能分析工具,用于分析应用内存泄漏、卡顿等问题,还会提供优化建议。

如果代码能力有限,DevEco Studio还支持拖拉拽构建应用,不需要写前端代码就能设计UI可视化界面,你还能用各种现成的模板和组件库,比如Empty Ability、List Ability、Tab Ability等,简单配置就能搭建一个应用,就像活动中有个学生演示的他写10行代码就做好了登录界面,这真的是非常友好了。

另外,DevEco Studio还有非常丰富的设备模拟器,能覆盖手机、平板、电视、手表、座舱等多种鸿蒙设备,你能在在没有实体设备的情况下,直接通过模拟器来测试和调试应用,这样大大降低了开发门槛,同时也保证了兼容性和用户体验。

效率极高的ArkTS编程语言

鸿蒙有自己的一套编程语言ArkTS,它在TypeScript的基础上进行了优化,语法非常接近,所以对于熟悉TypeScript的开发者来说几乎是零门槛。

ArkTS采取的是声明式开发范式,你只需说清楚UI的最终状态,不需要关心UI的搭建过程,鸿蒙系统会自动根据状态的变化来优化UI,这样就降低了UI开发的复杂度,不需要冗余的代码。

除此之外,ArkTS还引入了静态类型系统,能帮你在编译时发现潜在的bug,能避免在真实运行环境中应用崩溃,这样就强化了静态检查和分析,提升了代码的健壮性。

ArkTS同时集成了Python的一些优良特性,提供了语法糖,比如装饰器、泛型、模块化等,这样能写出更加易读、易于维护的代码。

学习ArkTS的中文资料会比一般主流编程语言都要多和专业,因为鸿蒙提供了官方文档、视频教程、Codelabs等各种学习资源,

鸿蒙还有专门的UI开发框架ArkUI,可以 “一次开发,多端部署”,能跨设备自动调整布局,完美解决适配问题。它还将UI拆分成一个个独立的、可复用的组件,比如Row、Column、Stack等,能极大的提高代码复用性,也方便维护。

连接万物的分布式架构

鸿蒙系统之所以能够在各种设备都能适配,且跨设备连接快速丝滑,是因为它是基于 "分布式" 开发的,采用分布式软总线、分布式数据管理、分布式任务调度三种核心技术,实现了去中心化,设备间都是主从之分,所以能互不干涉,又能相互快速联通。

就拿分布式软总线来说,它就像一根隐形光缆,可以让不同设备进行数据的传输和共享,不需要开发者去关心底层的物理连接方式和协议差异,这样能实现一个API,多处调用。

比如说你在用鸿蒙手机听音乐时,可以一键将音乐流转到音响上播放,或者将手机上微信视频切换到平板上,这些都能一键实现,就是基于分布式软总线技术。

分布式数据管理可能更好理解,鸿蒙可以将数据存储在分布式数据库里,这样数据能同步到所有设备,手机上的笔记在座舱大屏里也能看,而且数据内容、格式一致。你还可以对数据进行增删改查操作,能实时在所有设备同步,不会有设备冲突和数据错误。

分布式任务调度则是跨设备流转的核心技术,它能智能分辨哪种设备能适配哪种任务,比如你用手机在看电视时,如果旁边有电视,它会提醒自动将视频流转到电视大屏播放,这样体验效果更好。

实现分布式任务调度,主要依赖鸿蒙系统对设备的统一管理能力,它会将每个设备如屏幕大小、处理器性能、传感器类型等能力进行收集,形成一个分布式的能力池,当设备需要执行某个任务时,系统会根据任务的需求,从能力池中匹配最合适的设备。

我在现场还听到一个新的概念,叫做元服务(Meta-Services),特点是轻量化、免安装和可流转,是分布式能力的一个产品体现。比如你和好友在手机上开黑玩《英雄联盟》,鸿蒙元服务卡片能实时展示队伍经济、伤害等数据排名,不需要结束后才能看到排名,这样能提升游戏体验。

3、鸿蒙应用生态是一场艰苦的马拉松

从2019年初代Harmony OS发布,到今年的Harmony OS 6,的的确确能感受到鸿蒙一直在进化,今天看华为发布会,鸿蒙设备竟然超过2700万台了,开发者总数超过1000万,越来越多的年轻开发者加入,规模和惯性已然形成,但生态建设是一场艰苦的马拉松,要走的路还很长。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

@Python大数据分析

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值