当前位置: 首页 > news >正文

鸿蒙系统进一步学习(一):学习资料总结,少走弯路

随着鸿蒙Next的计划越来越近,笔者之前的鸿蒙系统扫盲系列中,有很多朋友给我留言,不同的角度的问了一些问题,我明显感觉到一点,那就是许多人参与鸿蒙开发,但是又不知道从哪里下手,因为资料太多,太杂,教授的人也多,无从选择。

鸿蒙Next发布计划

所以这篇文章,就谈谈笔者认为比较合适的学习路径和一些资料的整理,若还有疑问,请给我留言,笔者会一一解答!

1.认清你的方向

鸿蒙开发其实是分两个方向的

1)应用级别的开发:类似于开发抖音、美团和拼多多这种app,它所用的开发语言是ets和C++为主;

2)系统设备级别的开发,就是让一个普通的设备,如何跑起来鸿蒙系统,它主要用的开发语言是C和C++,就是嵌入式开发板那套流程!

本篇讲的是鸿蒙应用的开发相关!下面的章节适合的是有一定开发基础,但是对鸿蒙应用开发并不了解的小白,如果有一定基础的朋友,可以直接从第三步走起!

2.视频学习资料+考证

对于小白来说,最好就是从视频看起,可以从原理上讲清楚,并且演示相对应的代码,节奏也不快,能够大大降低学习的门槛,这里推荐华为开发者平台的官方教程,讲的很浅显,细节也很多,适合入门:HarmonyOS第一课|应用开发视频教程学习|HarmonyOS应用开发官网,

简单的入门教程

这个官方教程页面除了教你如何写一些简单的代码,还有更多的主题课,帮你扩展一下知识,个人觉得非常不错!

主题课

PS:视频里的小姐姐和小哥哥还是很美很帅的!

学习上面的课程后,可以进入考证的页面:华为开发者学堂

证书列表

考试通过后的证书

考完后会获得相应证书,这个看个人意愿,其实这个证书没什么太大作用,只是对自己一个学习成果的一个总结吧

3.sample的参考

经过第2步,你已经不是一个小白了,有一定的知识基础了。就好像盖房子,已经打好了地基一样。诚如上面所说,视频教程讲的非常的浅显,能够帮你入门,大多数都是50行代码以内,如果想学习更多的知识,把楼盖高点,就得看一些优秀的代码怎么架构,怎么写了?

这里推荐的是Gitee的官方仓里面的示例代码:README_zh.md ·OpenHarmony/applications_app_samples - Gitee.com,这个里面的种类非常多

示例代码分类

往下滑动,会贴心的发现还有很多仿app的解决方案

行业解决方案的示例代码

这应该就是为生态做准备的,不要你从0写,先给你打个样,最近大家都说微信怎么还不适配,这个聊天应用应该就是为它准备的吧(我瞎猜的)。

这里多说两句吧:

1)从示例代码里,我们能看到,目前华为已经支持了api10了,但是我们的devEco里最多还是api9,参考的时候,注意api版本

2)注意分支,目前来看,4.1已经处于Beta阶段,稳定版本应该是4.0,如果要寻找低api版本示例代码的话,就要切分支到3.2,可以找到api9的实例(看这个样子,升级一个大系统版本,就会升级一起API版本,鸿蒙是个新东西,迭代应该很快)

目前的分支

4.模仿地去写,并且扩展功能

把第三步吃透了,基本上已经属于一个比较合格的开发了,实际过程中,当遇到问题,或者开发示例代码中没有的功能时候,还是得去查接口,这个时候推荐接口文档的网页:OpenAtom OpenHarmony,这里可以看到很多新的接口,基本属于工具类的网页,需要的时候查,对应的接口也有对应的用法,还是很好用的。

多说一句,这个网页不太稳定,如果加载的一页内容比较多的时候,可能会卡死一会...[捂脸]

总结

参与鸿蒙开发,你要先认清适合你的方向,如果是想从事鸿蒙应用开发方向的话,可以参考本文的学习路径,简单来说就是:像小白一样参考视频学习,像小白一样踏踏实实考试,然后照着别人的代码写一写,改一下,知道大概怎么回事,到实际开发的时候,还是得多参考一下api,这个网页不太稳定,可能会卡死一会,别操作太快。

如果还有其他问题,请给笔者留言,也可以关注我。希望对鸿蒙感兴趣的朋友,点个收藏给个赞,你们的支持是我不断创作的动力,带来更多简单朴实正确的科技知识!

相关文章:

鸿蒙系统进一步学习(一):学习资料总结,少走弯路

随着鸿蒙Next的计划越来越近,笔者之前的鸿蒙系统扫盲系列中,有很多朋友给我留言,不同的角度的问了一些问题,我明显感觉到一点,那就是许多人参与鸿蒙开发,但是又不知道从哪里下手,因为资料太多&a…...

异步复位同步释放原则

复位信号有一个非常重要的原则,叫作异步复位同步释放原则。异步复位指一个寄存器的复位信号随时可以复位,不必考虑该寄存器的时钟信号正处在哪个相位上。同步释放是指一个寄存器的复位信号从复位态回到释放态的时机,必须与该寄存器的时钟信号…...

M1 Mac使用SquareLine-Studio进行LVGL开发

背景 使用Gui-Guider开发遇到一些问题,比如组件不全。使用LVGL官方的设计软件开发 延续上一篇使用的基本环境。 LVGL项目 新建项目 选择Arduino的项目,设定好分辨率及颜色。 设计UI 导出代码 Export -> Create Template Project 导出文件如图…...

web3知识体系汇总

web3.0知识体系 1.行业发展 2. web3的特点: 1、统一身份认证系统 2、数据确权与授权 3、隐私保护与抗审查 4、去中心化运行 Web3.0思维技术思维✖金融思维✖社群思维✖产业思维”,才能从容理解未来Web3.0时代的大趋势。 3.技术栈 Web3.jsSolidit…...

服务器与电脑的区别?

目录 一、什么是服务器 二、什么是电脑 三、服务器和电脑的区别 一、什么是服务器 服务器是指一种专门提供计算和存储资源、运行特定软件服务的物理或虚拟计算机。服务器主要用于接受和处理来自客户端(如个人电脑、手机等)的请求,并向客户…...

结束 代码随想录 链表章节(下一张

环形链表II 首先,先判断有没有环,像物理相对速度一样 只要 相对速度为1 那么快指针绝对会在环里追上慢指针,最后x 和z 的距离其实最后两个index总会相遇,相遇的点就是入口 class Solution { public:ListNode *detectCycle(List…...

re:从0开始的CSS学习之路 6. 字体相关属性

1. 字体相关属性 font-size 字体大小 font-family 字体的系列(字体簇) 可以设置多个字体,每个字体之间以逗号隔开 设置多个字体的目的是为了用户尽可能的支持字体 网页字体的五大类: serif 衬线字体 sans-serif 非衬线字体 monos…...

FPGA(基于xilinx)中PCIe介绍以及IP核XDMA的使用

Xilinx中PCIe简介以及IP核XDMA的使用 例如:第一章 PCIe简介以及IP核的使用 文章目录 Xilinx中PCIe简介以及IP核XDMA的使用一、PCIe总线概述1.PCIe 总线架构2.PCIe 不同版本的性能指标及带宽计算3.PCIe 接口信号 二、XDMA1.XDMA 与其它 PCIe IP 的区别2.XDMA简介 三…...

docker 运行jar包 指定配置文件

要在Docker中运行JAR包并指定配置文件,你可以创建一个Dockerfile来定义你的容器环境,并在其中指定如何运行JAR包和配置文件。下面是一个简单的例子,展示了如何在Dockerfile中设置这些配置: 第一步:创建 Dockerfile文件…...

‘vue-cli-service‘ 不是内部或外部命令,也不是可运行的程序

遇到 vue-cli-service 不是内部或外部命令,也不是可运行的程序或批处理文件。 的错误时,通常意味着Vue CLI没有被正确安装或配置在项目中。这可能是因为node_modules目录缺失了必要的包,或者局部安装的Vue CLI没有被正确设置到系统的PATH环境…...

第9讲用户信息修改实现

用户信息修改实现 后端修改用户昵称: /*** 更新用户昵称* param wxUserInfo* param token* return*/ RequestMapping("/updateNickName") public R updateNickName(RequestBody WxUserInfo wxUserInfo,RequestHeader String token){if(StringUtil.isNot…...

powershell 离线安装Posh-SSH

PowerShell 离线安装 Posh-SSH 模块,可以按照以下步骤进行: 从可靠的来源获取 Posh-SSH 模块的 NuGet 安装包(.nupkg 文件)。确保该安装包是最新版本,并且与你的 PowerShell 版本兼容。将 NuGet 安装包复制到你的计算…...

linux系统下vscode portable版本的c++/Cmake环境搭建002:使用 VSIX 安装VSCODE插件(暂记)

使用 VSIX 安装VSCODE插件 在 Visual Studio Code (VSCode) 中,你可以通过以下步骤离线安装插件: 获取插件的 VSIX 文件: 在一个联网环境中,访问 Visual Studio Code Marketplace,搜索并找到你想要的插件。 比如&am…...

PHP特性知识点总结

如果想观感更好看到图片,可以去我的gitbook或者github去看 github:https://github.com/kakaandhanhan/cybersecurity_knowledge_book-gitbook.22kaka.fun gitbook:http://22kaka.fun description: 专门出的关于php的特性比较,后面好像也有java的特性。 🏀 PHP特性知识点…...

数据库基本操作

一.DDL(Data Definition Language) 数据定义语言,该语言包括以下部分: 对数据库的常用操作对表结构的常用操作修改表结构 不涉及数据 不区分大小写 二.对数据库的常用操作 1.查看所有的数据库 show databases; 2.创建数据…...

【51单片机】矩阵键盘(江科大)

6.1矩阵键盘 矩阵键盘: 在键盘中按键数量较多时,为了减少I/O口的占用,通常将按键排列成矩阵形式 采用逐行或逐列的“扫描”,就可以读出任何位置按键的状态 1.数码管扫描(输出扫描) 原理:显示第1位→显示第2位→显示第3位→ …… ,然后快速循环这个过程,最终实现所…...

Go语言教学(一)起源

目录 一.Go语言来源 二.Go语言应用 一.Go语言来源 Go语言,又称Golang,是Google公司于2009年11月正式对外公开的一门编程语言。它是一门静态强类型、编译型的语言,其语法与C相近,但在功能上有所改进和增加,如内存安全…...

口腔助手|口腔挂号预约小程序|基于微信小程序的口腔门诊预约系统的设计与实现(源码+数据库+文档)

口腔小程序目录 目录 基于微信小程序的口腔门诊预约系统的设计与实现 一、前言 二、系统功能设计 三、系统实现 1、小程序前台界面实现 2、后台管理员模块实现 四、数据库设计 1、实体ER图 2、具体的表设计如下所示: 五、核心代码 六、论文参考 七、最新…...

ChatGPT高效提问—prompt常见用法(续篇三)

ChatGPT高效提问—prompt常见用法(续篇三) 1.1 多选项 ​ 多选项技术为模型提供了一个清晰的问题或任务,并附带一组预先定义的潜在答案。这种方法在生成仅限于特定选项集的文本方面表现出色,适用于问答、文本补全和其他任务。利…...

IAR报错:Error[Pa045]: function “halUartInit“ has no prototype

在IAR工程.c文件末尾添加一个自己的函数,出现了报错Error[Pa045]: function "halUartInit" has no prototype 意思是没有在开头添加函数声明,即void halUartInit(void); 这个问题我们在keil中不会遇到,这是因为IAR编译器规则的一…...

别再手动拖拽了!用Java POI + XSSFDrawing,5行代码搞定Excel单元格图片批量插入(附完整源码)

5行代码实现Excel图片批量插入:Java POI XSSFDrawing高效开发指南 1. 为什么需要自动化Excel图片插入? 在日常报表开发中,我们经常遇到需要将大量图片(如用户头像、产品图)嵌入Excel单元格的场景。传统手动操作存在三…...

挑选专业语音工具不会选?这5个实用标准帮到你

日常工作生活中,不少人会遇到会议纪要整理、课堂录音梳理、嘉宾访谈整理等场景,这类场景往往需要耗费大量时间抠语音内容,挑选语音转写工具时,也常面临准确率差、速度慢等问题,结合多款主流AI工具实测,整理…...

LinkSwift网盘直链助手:让你的下载体验更简单高效

LinkSwift网盘直链助手:让你的下载体验更简单高效 【免费下载链接】Online-disk-direct-link-download-assistant 一个基于 JavaScript 的网盘文件下载地址获取工具。基于【网盘直链下载助手】修改 ,支持 百度网盘 / 阿里云盘 / 中国移动云盘 / 天翼云盘…...

从‘班级-学生’数据实战出发:手把手教你用R语言的lme4包搞定多层线性模型(MLM/HLM)

从班级-学生数据实战:R语言lme4包多层线性模型全流程解析 当研究者面对具有层级结构的数据时(如学生嵌套于班级、员工嵌套于公司),传统线性回归的独立性假设往往被打破。多层线性模型(Multilevel Linear Models, MLM&a…...

Perplexity股票数据清洗SOP(含NASDAQ非标字段映射表):金融工程师内部使用的12项校验规则

更多请点击: https://codechina.net 第一章:Perplexity股票信息检索 Perplexity AI 公司尚未上市,因此不存在公开交易的股票代码、实时行情或交易所挂牌信息。这一事实常被开发者和投资者误读,尤其在使用金融数据 API 时容易触发…...

Perplexity+知网联合检索的7类失效场景全图谱:从DOI解析失败到CSSCI标识丢失的终极修复手册

更多请点击: https://intelliparadigm.com 第一章:Perplexity知网联合检索的失效机理总论 当用户尝试将 Perplexity AI 的实时网络推理能力与知网(CNKI)学术资源库进行协同调用时,系统级耦合在协议层、语义层与权限层…...

AI数字人驱动的矩阵内容生产:2026年技术架构与人效革命

一、背景:为什么2026年矩阵团队开始淘汰真人出镜?2024年之前,短视频矩阵的内容生产模式是这样的:环节传统方式瓶颈写脚本编剧手写1人1天最多写5条拍视频真人出镜拍摄1人1天最多拍3条剪辑剪辑师手动剪1人1天最多剪8条配音真人录音/…...

curatedMetagenomicData 应用宝典:3步实现人类微生物组数据分析实战

curatedMetagenomicData 应用宝典:3步实现人类微生物组数据分析实战 【免费下载链接】curatedMetagenomicData Curated Metagenomic Data of the Human Microbiome 项目地址: https://gitcode.com/gh_mirrors/cu/curatedMetagenomicData curatedMetagenomicD…...

基于Arduino与V-USB的红外转USB键盘接收器设计与实现

1. 项目概述:从游戏抢答器到通用输入设备的蜕变几年前,我在一个教育科技展会上看到了那种用于课堂抢答的无线按钮系统,一套动辄上千元的价格让我这个喜欢折腾硬件的玩家直摇头。当时我就在想,这玩意儿的核心不就是个红外发射接收加…...

Codex + SSH 远程运维实战:让 AI 管你的云服务器

Codex SSH 远程运维实战:让 AI 管你的云服务器从 Docker 部署到数据库调优,从日志排查到安全加固——用 Codex CLI 通过 SSH 管理云服务器的完整实战指南。一、为什么用 Codex 做运维? 传统运维的痛点: 半夜报警,睡眼…...