与OpenHarmony共同成长的一年历程和成果展示分享

描述

0. 前言

    我平常主要活跃在51CTO OpenHarmony技术社区上和华为官方的开发者论坛上。

    51CTO OpenHarmony技术社区有我的技术专栏《鸿蒙系统学习笔记》,这个专栏汇集了我在过去一年多时间里学习鸿蒙开发技术的一些心得,其中不少博文收获了不少好评。 下面就简单列一下链接出来,感兴趣的读者请移步去那边阅读,这里就不费时费力转过来了。

  • 0.1 《鸿蒙系统的启动流程v2.0》----LiteOS_A内核系统
  • 0.2 《鸿蒙系统的启动流程v3.0》++LiteOS_M内核系统
  • 0.3 《鸿蒙系统的的编译流程及分析v1.0》----小型系统+轻量系统
  • 0.4 关于“Hi3861_WiFiIoT工程”的一组文章
  • 0.5 《鸿蒙的DFX子系统》----小型系统+轻量系统
  • 0.6  关于“SAMGR--系统服务框架子系统”的一组文章,V1.0为比较随意的博文,发表在51CTO OpenHarmony技术社区;V2.0为比较正式的博文,在2021年下半年发表在“确实▪开源”论坛,拿去参加第四届中国软件开源创新大赛(代码评注组),荣获二等奖,V2.0版本博文入口为《OHOS的系统服务框架子系统(SAMGR)代码解读
  • 0.6 关于标准系统的编译部分,有几篇简短博文。
  • 0.7 关于鸿蒙系统的驱动子系统部分,也有几篇博文,但后来停止继续更新,主要是把它们写到书里去了。

    上面这些博文内容,将会以更详尽、更完整的全新面貌呈现在我的技术书籍《沉浸式剖析OpenHarmony源代码》里面,其中驱动子系统,是全书的重点,花了整本书25%的篇幅去深扒鸿蒙系统的驱动开发几乎所有细节,敬请期待。

    刚刚我也在本社区也开通了《鸿蒙系统学习笔记》专栏,未来有新的博文要发表,我将尽量两边同步发布。

1. 历程

    2021年大概也就是3月底的这个时候,我才算是真正结识OpenHarmony的。

    当时也是为了寻找工作机会,就去了解一下据说是搭载了HarmonyOS 1.0的华为智慧屏产品(我的老本行就是家庭影音产品方向的),然后在网上也搜索了解一下HarmonyOS是什么个情况,再然后就被吸引过来了。

    当然我也顺带了解了一下物联网的发展情况,看到了《信息通信行业发展规划(2016-2020年)》和《信息通信行业发展规划物联网分册(2016-2020年)》两份文件还有其它一些资料,才发现原来物联网这盘棋这么大!2021年3月发布的《“十四五”规划纲要》和11月发布的《“十四五”信息通信行业发展规划》做了更详细和具体的规划,要知道我党向来是说到做到的,今天的规划,明天就变成现实了!

    3月底,我才开始从gitee下载代码回来学习的,此时OpenHarmony已经开源半年多了,所以我算不上最早接触OpenHarmony的那一批人,不过也还不算晚。

    我在51CTO OpenHarmony技术社区活跃起来,应该就是2021年3月底开始的,至今刚好一年,所以又到了盘点一下的时间了。

    经过一些日子的学习和整理,4月初我在51CTO OpenHarmony技术社区 发表了第一篇博文,没想到这么受大家的欢迎,这给了我很大的鼓励。当时纯粹就是想尽量深入理解一下OpenHarmony,也把自己的一些学习心得分享出来而已,多少也带点开源的意思。大家可以看到我早期分享的博文,都带有相应的pdf文档的,只想着方便大家学习使用就好。网络上的各种转载不标明出处也就罢了,毕竟写出来就是为了给别人学习的,也省得我自己动手去转载。但后来看到有人拿着这些文档去招摇撞骗,还有些地方拿过去给人收费(Xx币或积分)下载,我就感觉不爽了,这不是我的本意。所以后来就渐渐不带pdf文档了,请各位小伙伴多加包涵。

    6、7月份的时候,有两位自称是出版社编辑的人在社区私信上问我要不要合作出书,我婉拒了~~,因为我也是要找书看的人,还没敢有写书给别人看的想法。

    后来怎么等也不见有南向开发的书上市,这是个问题,但也是个机会。正所谓“王侯将相宁有种乎”,所有的书不还都是人写出来的嘛!既然没有,那就自己写一本!所以在9月份之后,我就比较少在社区上发文了,一个是没空了,另一个是因为都写到书里去了~~

    10月份,我参加了HDC,对OpenHarmony的技术路线和未来的发展有了更进一步的认识;HDC上也顺便结识了几位大佬,更加确定了这个方向可以走得很远。

    经过几个月的学习、总结、整理,到农历年底的时候,这本书其实已经基本成型了。

    但是写书毕竟不是写技术博客,技术博客的随意性和行文的口语化等,在书上肯定是不允许的。因此今年2/3月份,主要都是围绕原创图书的写作规范,来对章节、行文、图表、甚至标点符号的使用等方面做调整,这也是一个非常繁琐的过程。

    虽然初稿已经提交出版社了,但是从编辑的角度来看,肯定还少不了几轮的来回沟通和微调,然后才能印刷出版~~

    所以接下来还需要关注此书的小伙伴们耐心再等等。

    与OpenHarmony共同成长的这一年,OpenHarmony茁壮成长硕果累累,我也收获颇丰,至少又完成了一件以前都不敢想的事情,心里的成就感是敛不住的。

2.成果

驱动开发



 

驱动开发



 

    本书的章节安排,基本上就是本人学习OpenHarmony开发从入门到深入的过程实录,从一个初学者的视角来一边学习,一边总结,渐进式地进行条分缕析,以展现我所理解的OpenHarmony。

    本书目前分为9章,各章节的大概内容如下:

  • 第1章,简单介绍OpenHarmony的发展历史、技术特性和发展前景。
  • 第2章,OpenHarmony的设备开发环境搭建步骤繁琐且复杂,是开发者入门OpenHarmony驱动开发遇到的第一个拦路虎,本章提供了一个清晰的开发环境搭建步骤,为开发者提供一个可行的操作参考。
  • 第3章,简单介绍系统架构和一二级目录结构,让开发者对OpenHarmony有一个整体的认识。
  • 第4章,OpenHarmony的编译构建体系非常复杂,多种构建工具常常交叉使用,非常容易让人产生困扰。本章在目前情况下尽量把小型系统、标准系统的编译体系讲清楚,帮助开发者理清系统构建上的头绪。
  • 第5章,详细分析了OpenHarmony系统服务层各大功能组件的详细启动流程。
  • 第6章,分析了OpenHarmony设备驱动开发需要关注的部分子系统,特别是DFX子系统和IoT硬件子系统。
  • 第7章,详细分析了OpenHarmony系统服务框架的基础理念和实现,即所有功能和特性,都抽象为服务进行管理和使用。这一章,目前仅限于对轻量系统和小型系统的系统服务框架进行分析,暂未涉及标准系统部分。本章的内容,在2021年下半年拿去参加第四届中国软件开源创新大赛(代码评注组),荣获二等奖。
  • 第8章,初步分析了分布式通信子系统的部分组件,其中的软总线组件是OpenHarmony实现万物互联/万物智联的基石。因为软总线是一个非常庞大且复杂的系统,这几个月来我一直尝试尽可能深入地去理解它,但是技术难点非常多,我对软总线核心部分的理解,还没有能够非常顺畅地串联起来,因此想要做出如第7章和第9章那样完整而细致的总结,目前还做不到,只能请读者们见谅了。后继会在社区上发博文以记录软总线模块的学习心得,待有所理解后再汇总到本书的更新版本中去。
  • 第9章,非常深入地分析了驱动子系统自下而上的大量实现细节,为驱动开发者们深入理解OpenHarmony的驱动框架提供一个参考。驱动子系统中还有不少地方,本书没有进一步展开深入分析的,未来也会以社区博文的方式进行补充。

    另外,目前本书暂未涉及系统移植方面的经验总结,是一个比较大的遗憾,希望未来能够一并补全。

    因为实际上我也是OpenHarmony的一个初学者,在学习和总结中,难免会有各种疏漏和错误,读者朋友在阅读本书时,发现我有理解不对的地方,还请积极反馈给我,大家一起讨论,共同进步。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分