倪峰,楊立志,蘇春芳,金海峰
(江陰職業(yè)技術(shù)學院計算機科學系,江蘇江陰 214400)
當前對話與合作仍是中西方關(guān)系的主流,但西方國家在高新技術(shù)領(lǐng)域持續(xù)對我國進行打壓這是不爭的事實?!缎畔踩芯俊?019年5月版刊登了中國工程院院士倪光南先生的論文《直面打壓放棄幻想加快推進國產(chǎn)自主可控可替代》[1],文中呼吁加快推進國產(chǎn)自主可控替代計劃,構(gòu)建安全可控的信息技術(shù)體系。
伴隨著智能手機等移動端平臺的誕生,以Android 和IOS 兩大陣營的智能終端操作系統(tǒng)一直牢牢占據(jù)著統(tǒng)治地位,從華為公司生產(chǎn)智能手機之初,華為中央軟件研究院就居安思危,提出了構(gòu)建分布式操作系統(tǒng)的設(shè)想,以防在手機操作系統(tǒng)方面被掣肘,2016年實現(xiàn)了分布式操作系統(tǒng)的內(nèi)核構(gòu)建,2019年8月,分布式操作系統(tǒng)1.0 版對外發(fā)布,并命名為“鴻蒙”,2020 年華為將核心代碼捐獻給開放原子開源基金會,形成Open Harmony 項目,同年9 月華為發(fā)布鴻蒙2.0版,并應用于華為Watch、華為智慧屏、車機系統(tǒng)等領(lǐng)域,2021年6月,鴻蒙2.0版正式適配華為和榮耀系列的手機,目前鴻蒙最新版本已升級到4.0。國內(nèi)各大廠商紛紛加入鴻蒙生態(tài),OPPO 宣布旗下IOT 設(shè)備可接入鴻蒙系統(tǒng)、魅族宣布旗下的Lipro 智能家居產(chǎn)品可接入鴻蒙系統(tǒng),2022 年11 月4 日,在華為開發(fā)者大會主題演講中,華為常務(wù)董事余承東先生宣布搭載鴻蒙操作系統(tǒng)的華為設(shè)備已超過3.2億臺[2],鴻蒙操作系統(tǒng)的軟硬件生態(tài)日益健壯。鴻蒙軟硬件生態(tài)起步較晚,目前國內(nèi)有少部分高校開始嘗試在課程體系中融入鴻蒙應用開發(fā),但不論從軟硬件環(huán)境、教材建設(shè)、課程資源建設(shè)等各方面尚處于起步探索階段[3-4]。
鴻蒙系統(tǒng)的設(shè)計理念是面向未來的全場景智慧化體驗。它將分布式技術(shù)和多核高性能相結(jié)合,致力于提供更加流暢、安全和智能的用戶體驗。鴻蒙操作系統(tǒng)遵循分層式的系統(tǒng)架構(gòu),自頂向下依次分為:應用層、框架層、系統(tǒng)服務(wù)層、內(nèi)核層,按照“系統(tǒng)-子系統(tǒng)-功能模塊”逐級展開,可根據(jù)實際部署場景對功能模塊進行裁剪[5]。
應用層由Feature Ability 或Particle Ability 組成,F(xiàn)eature Ability 提供用戶UI 界面進行交互,Particle Ability 無UI,主要負責后臺任務(wù)運行及數(shù)據(jù)抽象訪問,為Feature Ability進行用戶交互提供所需的后臺數(shù)據(jù)訪問功能??蚣軐訛镠armonyOS 開發(fā)者提供了多種開發(fā)語言的用戶程序框架,支持ArkTS、JavaScript、Java、C/C++等主流開發(fā)語言,提供了ArkUI 和Java UI兩種UI 框架,其中ArkUI 是華為自研的方舟開發(fā)框架,支持ArkTS和JavaScript。Java UI使用Java開發(fā)語言,便于熟練使用Java 語言的Android 開發(fā)人員快速適應鴻蒙開發(fā)環(huán)境。系統(tǒng)服務(wù)層是HarmonyOS 的核心能力,通過框架層為應用程序提供服務(wù),主要包括分布式軟總線、數(shù)據(jù)管理、任務(wù)調(diào)度、方舟多語言運行時、基礎(chǔ)庫類、系統(tǒng)事件通知等,并能為智慧屏、可穿戴設(shè)備、IOT 設(shè)備提供相應的軟硬件服務(wù)。內(nèi)核層分為內(nèi)核子系統(tǒng)和驅(qū)動子系統(tǒng)兩部分,內(nèi)核子系統(tǒng)通過內(nèi)核抽象層KAL屏蔽多內(nèi)核差異,為上層提供基本的操作系統(tǒng)功能,如進程與線程的管理,內(nèi)存的管理,文件系統(tǒng)、外設(shè)及網(wǎng)絡(luò)設(shè)備的管理等。驅(qū)動子系統(tǒng)通過硬件驅(qū)動框架HDF 提供設(shè)備驅(qū)動開發(fā)和外設(shè)訪問與管理功能。
目前國內(nèi)高校電子信息類學科培養(yǎng)體系中,教學內(nèi)容主要參考國外先進技術(shù),學生容易養(yǎng)成對國外技術(shù)的依賴,并產(chǎn)生認同感,在西方國家對我國高新技術(shù)行業(yè)普遍采取技術(shù)封鎖和打壓的形勢下,這種依賴國外技術(shù)的課程體系的設(shè)置方式對我國的信息安全極為不利。在國家提出科技自立自強的背景下,優(yōu)化物聯(lián)網(wǎng)專業(yè)的課程體系,兼顧行業(yè)主流技術(shù)路線與國產(chǎn)可替代化軟硬件生態(tài),響應國家的方針政策,值得深入研究。本文對江陰職業(yè)技術(shù)學院計算機系物聯(lián)網(wǎng)應用技術(shù)專業(yè)課程體系中融入鴻蒙軟件生態(tài)展開教改探索與實踐,通過合理調(diào)配課時比例,融入國產(chǎn)軟硬件生態(tài),在緊跟行業(yè)主流技術(shù)路線的同時,拓寬學生對國產(chǎn)軟硬件生態(tài)的認知。在部分專業(yè)課程中以國產(chǎn)軟硬件生態(tài)作為課程主線。通過課程體系的調(diào)整,在潛移默化中讓學生了解國產(chǎn)軟硬件生態(tài),并能在國產(chǎn)平臺上進行軟硬件開發(fā),通過與國外技術(shù)的對比,增強民族自豪感的同時認清差距,培養(yǎng)學生家國情懷,從自我做起奮起直追。
根據(jù)前文分析,HarmonyOS 應用開發(fā)使用的主流開發(fā)語言為ArkTS和Java,但HarmonyOS 從API8開始不再推薦使用Java 作為首選的開發(fā)語言,Java 版本的SDK 后續(xù)將不再繼續(xù)演進,最高版本停留在API7,使用API7及以前的Java SDK 開發(fā)的應用可以兼容后續(xù)的HarmonyOS 版本。從中可以察覺華為將主推自研的ArkTS 作為首選的開發(fā)語言,如圖1 所示ArkTS 是TypeScript 與JavaScript 語言的超集,是一種聲明式的開發(fā)范式,為開發(fā)者提供更便捷的開發(fā)體驗。因此進行鴻蒙應用軟件開發(fā),必須具備Java 或JavaScript 語言的基礎(chǔ)。
圖1 HarmonyOS開發(fā)語言
江陰職業(yè)技術(shù)學院物聯(lián)網(wǎng)應用技術(shù)專業(yè)主要培養(yǎng)學生物聯(lián)網(wǎng)系統(tǒng)應用軟件開發(fā)、物聯(lián)網(wǎng)系統(tǒng)設(shè)備安裝調(diào)試及運維、物聯(lián)網(wǎng)項目規(guī)劃與管理等方面的能力[6]。其中物聯(lián)網(wǎng)系統(tǒng)應用軟件開發(fā)是貫穿學生培養(yǎng)方案的一條主線,如圖2所示,主要包括傳感網(wǎng)絡(luò)的構(gòu)建、數(shù)據(jù)采集與設(shè)備管理、云平臺的構(gòu)建與數(shù)據(jù)承載、應用層軟件傳感數(shù)據(jù)獲取與控制等方面。
圖2 物聯(lián)網(wǎng)應用軟件開發(fā)教學脈絡(luò)
在現(xiàn)有的教學計劃中,在前兩個學期系統(tǒng)學習了“程序設(shè)計入門”“可視化程序設(shè)計”“物聯(lián)網(wǎng)感知層技術(shù)”“Web前端技術(shù)”等平臺專業(yè)課程。如表1所示,學生已經(jīng)具備了一定的程序設(shè)計開發(fā)的思維能力,對物聯(lián)網(wǎng)數(shù)據(jù)采集、傳輸體系的整體框架有所了解,掌握C、Java、JavaScript 等基本的開發(fā)語言,具備通過HTML+CSS 技術(shù)構(gòu)建基本頁面的能力,對XML、JSON等常見的數(shù)據(jù)格式較為熟悉,已完成HarmonyOS應用開發(fā)所需的知識儲備。
表1 前導課程與知識儲備
按原教學計劃,在第三學期開設(shè)“移動終端應用軟件開發(fā)”,系統(tǒng)介紹Android 平臺下的App 開發(fā),原計劃96學時,使用Java作為開發(fā)語言,使用基于IntelliJ IDEA 的官方應用開發(fā)集成開發(fā)環(huán)境Android Studio。開設(shè)此課程的目的是通過Android 平臺,實現(xiàn)傳感數(shù)據(jù)的展示及控制命令的下發(fā)。為拓寬學生的知識面,在第三學期還開設(shè)了“微信小程序開發(fā)”課程,在微信端進行傳感數(shù)據(jù)的展示。自從鴻蒙系統(tǒng)問世以來,課程組對鴻蒙應用開發(fā)進行了深入研究。鴻蒙應用軟件開發(fā)與Android應用軟件開發(fā)的環(huán)境高度相似,鴻蒙使用的開發(fā)環(huán)境為DevEco Studio,也是一款基于IntelliJ IDEA 的集成開發(fā)環(huán)境,Android 使用Java或Kotlin 開發(fā),鴻蒙使用Java 或ArkTS,Android 使用XML標記語言實現(xiàn)UI布局、控件定義、權(quán)限設(shè)置等功能,而鴻蒙則使用JSON 數(shù)據(jù)格式完成上述功能。從程序開發(fā)的難度、學生知識體系支撐等各方面都能滿足鴻蒙應用開發(fā)的條件,且具備濃厚的課程思政元素,因此從2021級物聯(lián)網(wǎng)技術(shù)應用專業(yè)開始嘗試進行教學改革,在移動終端應用軟件開發(fā)課程中融入鴻蒙應用軟件開發(fā)的知識內(nèi)容,修改物聯(lián)網(wǎng)技術(shù)應用專業(yè)教學計劃,削減一門32學時的選修課,將本課程增加到128學時,其中Android應用軟件開發(fā)和HarmonyOS應用軟件開發(fā)兩大板塊各占64學時。通過課程的學習和對比,讓同學們對Android 開發(fā)和HarmonyOS 的開發(fā)有清晰的對比,拓寬就業(yè)面,培養(yǎng)學生對國產(chǎn)的鴻蒙軟硬件生態(tài)使用的習慣,堅定科技自立自強的信心,增強民族自豪感。
課程以“智慧社區(qū)”項目為依托,在介紹HarmonyOS 基礎(chǔ)知識的同時,完成基于智慧社區(qū)的移動端App。課程組自主研發(fā)了“智慧社區(qū)”項目實訓沙盤,如圖3所示智慧社區(qū)實訓沙盤安裝了溫度、濕度、光照等多路傳感器,同時通過中間繼電器控制燈光照明、窗簾、風扇等執(zhí)行器。傳感器和執(zhí)行器已經(jīng)通過Zig-Bee通信協(xié)議實現(xiàn)傳感網(wǎng)絡(luò)的組建,通過NB-IoT技術(shù)將傳感數(shù)據(jù)實時上傳到華為物聯(lián)網(wǎng)云平臺。移動端App 通過訪問華為云提供的API 接口,獲取傳感器數(shù)據(jù)并顯示,同時可以進行控制命令的下發(fā),進而控制燈光、風扇、窗簾等執(zhí)行機構(gòu)。
圖3 智慧社區(qū)功能結(jié)構(gòu)圖
課程以項目導入任務(wù)驅(qū)動方式開展,分別實現(xiàn)在鴻蒙和Android 兩種移動端應用程序,在前導課程中已經(jīng)實現(xiàn)傳感數(shù)據(jù)上報華為物聯(lián)網(wǎng)云平臺,本課程的主要任務(wù)是通過移動端App 對接華為物聯(lián)網(wǎng)云平臺API接口,實現(xiàn)傳感數(shù)據(jù)獲取及控制命令下行的功能。如表2 所示,對照鴻蒙和Android 兩個不同的開發(fā)平臺,分別實現(xiàn)6個功能相同的任務(wù)模塊。以鴻蒙端為例,任務(wù)一實現(xiàn)鴻蒙移動端登錄鑒權(quán),創(chuàng)建登錄相關(guān)的Ability,將輸入的華為云平臺IAM用戶信息打包成JSON格式的數(shù)據(jù),通過POST請求提交給華為云平臺指定的URI,華為云認證通過后生成Token 回傳給移動端。任務(wù)二實現(xiàn)傳感設(shè)備數(shù)據(jù)的查詢,將Token 包裝到HTTP 請求的Header 中,通過GET 請求向華為云平臺對應的URI請求指定設(shè)備的影子數(shù)據(jù),華為云將數(shù)據(jù)以JSON格式推送給移動端。任務(wù)三實現(xiàn)數(shù)據(jù)的顯示,將任務(wù)二請求得到的JSON 格式的數(shù)據(jù)進行解析和提取,通過消息機制將數(shù)據(jù)回傳主UI線程,更新界面顯示,并通過輕量級數(shù)據(jù)存儲Preferences 實現(xiàn)傳感數(shù)據(jù)的保存。任務(wù)四實現(xiàn)控制命令的下發(fā),下發(fā)的命令經(jīng)華為云平臺轉(zhuǎn)發(fā)到傳感層,控制對應的繼電器動作,實現(xiàn)燈光、風扇等執(zhí)行器的運行。任務(wù)五模擬實現(xiàn)App 的數(shù)字簽名和應用市場上架。任務(wù)六實現(xiàn)設(shè)備差異化,通過一次開發(fā),分別在模擬器上實現(xiàn)華為Watch、華為手機端、華為智慧屏的程序部署。
表2 實訓任務(wù)分解及開發(fā)平臺對比
黨的二十大報告中提出,到2035年我國要實現(xiàn)高水平科技自立自強,進入創(chuàng)新型國家前列[7]。物聯(lián)網(wǎng)技術(shù)作為信息技術(shù)產(chǎn)業(yè)的生力軍,是實現(xiàn)高水平科技自立自強的一條主賽道,在課程的實施中,任課教師既為“人師”也為“經(jīng)師”,必須在課程中融入思政元素,激發(fā)學生科技報國的熱情。
鴻蒙作為國產(chǎn)自研操作系統(tǒng),是信息技術(shù)產(chǎn)業(yè)中的高精尖產(chǎn)品,契合高水平科技自立自強的發(fā)展路線,課程組深挖思政元素,通過以下幾個方面進行課程思政的融入。一、舉案例,以英阿馬島戰(zhàn)爭、我國核武器研制、光刻機設(shè)備的制約等為例,強調(diào)科技自立自強的重要性。二、樹典型,介紹兩彈一星的元勛科學家們、電磁彈射專家馬偉明院士等,發(fā)揮榜樣的作用,激勵學生努力學習,科技報國。三、立規(guī)矩,培養(yǎng)學生良好的職業(yè)素養(yǎng),從實驗器具擺放、實訓環(huán)境打掃、節(jié)約實驗耗材等日常行為進行教育,以平時成績作為約束。四、樹信心,以鴻蒙操作系統(tǒng)、華為海思芯片、長江存儲等為例,讓學生看到我國近年來在電子信息產(chǎn)業(yè)中取得的成就,樹立科技報國信心。
以2021級物聯(lián)網(wǎng)技術(shù)應用專業(yè)為試點進行教學改革試驗,整個教學實施過程通過翻轉(zhuǎn)課堂的方式展開,課前教師錄制教學視頻上傳泛雅平臺,并要求學生自學,通過平臺反饋及課堂教學效果分析,如表3所示大部分同學能及時預習并完成課前預習任務(wù),部分優(yōu)秀學生能提前完成實訓任務(wù),并對任務(wù)進行分析講解。通過匿名問卷調(diào)查反饋,學生對鴻蒙應用軟件開發(fā)的學習熱度高于Android 平臺,對華為系列產(chǎn)品的認可度也更高。
表3 課程實施情況
鴻蒙操作系統(tǒng)的誕生,打破了Android和IOS的壟斷地位,經(jīng)過近幾年的孕育,鴻蒙軟硬件生態(tài)進一步完善,在國家力推高水平科技自立自強的背景下,OpenHarmony 項目必將取得良好的發(fā)展,越來越多的廠商也將融入這個生態(tài)中來,從高職院校學生的認知能力角度出發(fā),在高職院校電子信息類專業(yè)開設(shè)鴻蒙應用軟件開發(fā)相關(guān)課程是可行的,從國家信息安全和自主可控的層面以及人才培養(yǎng)需求層面,都有很大的潛力可以挖掘。目前存在的問題是由于鴻蒙生態(tài)建立不久,適合高職院校層次的鴻蒙應用開發(fā)相關(guān)教材尚不完備,目前筆者在鴻蒙應用開發(fā)相關(guān)內(nèi)容的授課過程中主要依靠華為官方提供的開發(fā)文檔作為教學資料,這也是后續(xù)值得去進一步完善的地方。