6 月 22 日消息,華為現已在其開發者網站上架《鴻蒙編程語言白皮書》V1.0 版本,主要圍繞鴻蒙 HarmonyOS 整體框架、適用場景、演進策略、未來愿景四大角度進行闡述。
在整體框架方面,鴻蒙支持 ArkTS、倉頡和 C / C++ 三種編程語言,其中 ArkTS 為動態類型編程語言,基于 Typescript,具有易學易用、生態豐富等特征,適用于高效開發場景;倉頡為靜態類型編程語言,具有高性能、強安全、跨平臺等特性,適用于對性能和安全要求較高的場景;C / C++ 適用于高性能計算、硬件加速等特定場景,可通過跨語言互操作封裝為 ArkTS 和倉頡擴展模塊。
官方介紹了相應語言的互操作性,其中 ArkTS 與 C / C++ 通過 Node-API 實現互操作;倉頡與 C 語言實現函數互相調用及跨語言數據轉換;倉頡與 ArkTS 通過互操作庫實現數據轉換和函數調用。
在適用場景方面,ArkTS 兼容 TS 高效語法,提供豐富的基礎庫和并發能力,支持聲明式 UI 開發,可繼承 TS / JS 語言生態。其編譯運行時支持混合執行模式,優化模塊加載機制,提供高效的并發編程模型,同時在語言層面引入類型系統等特性,并在編譯工具鏈和運行時提供額外的安全機制。
而倉頡基于靜態類型和靜態編譯優化技術,主要利用靜態類型系統、自動內存管理等確保程序安全。支持靜態編譯至不同 OS 平臺的機器碼,實現跨 OS 平臺代碼共享,支持多種操作系統平臺,并提供了外形混淆、數據混淆、控制流混淆等技術確保技術資產保護。
在演進策略方面,華為未來將進一步定義和完善相應編程語言規范,提供基于語言規范的編譯器實現,引入類型信息優化運行時性能,同時深化與 AI 技術的融合,推動相應語言在更多領域應用。