IT之家 6 月 23 日消息,在 HDC 2024 華為開發(fā)者大會主題演講上,華為終端 BG 軟件部總裁龔體正式官宣了華為自研倉頡編程語言。該語言歷經(jīng) 5 年研發(fā)沉淀,現(xiàn)已開啟開發(fā)者預覽。
而在 HDC 2024 后續(xù)“倉頡語言助力鴻蒙原生應用高效開發(fā)”議程中,華為編程語言首席技術專家、中國工商銀行、力扣 LeetCode 分享了有關倉頡的更多信息,IT之家為大家?guī)硪皇謨热輩R總:
倉頡編程語言簡介
華為編程語言首席技術專家、倉頡編程語言首席架構師馮新宇首先上臺演講,對倉頡編程語言進行了簡單介紹。馮新宇也是南京大學計算機科學與技術系教授,有關他的介紹可以查看IT之家此前的相關報道。
倉頡編程語言是一款面向全場景智能化應用開發(fā)的現(xiàn)代編程語言,具有原生智能化、天生全場景、高性能,強安全等技術特色,擁有現(xiàn)代語言特性的集成、全方位的編譯優(yōu)化和運行時實現(xiàn)、簡潔易用的智能 Agent 聲明式編程框架、以及開箱即用的 IDE 工具鏈支持。
據(jù)馮新宇教授介紹,倉頡采用模塊化分層設計,空載內存只需要 2.08MB,而移動端主流語言 S 需要 4.91MB(預計指 Swift),移動端主流語言 J 需要 58.97MB(預計指 Java)。
此外,倉頡支持全并發(fā) GC(IT之家注:GC 指 Garbage Collection,編程中的垃圾回收),相比傳統(tǒng) GC 可減少 STW 停頓(是指在執(zhí)行垃圾回收時,應用的其他線程都被暫停),提高應用線程的流暢性。
倉頡還支持多種語法糖(相當于代碼中的簡寫形式)、并發(fā)優(yōu)化、和 C 語言的互操作等。
中國工商銀行倉頡開發(fā)試點
馮新宇教授介紹完畢后,中國工商銀行的李可研究員介紹了該機構對倉頡語言的開發(fā)實踐。
中國工商銀行目前已完成首個鴻蒙版 App 的開發(fā),同時采用了倉頡和 ArkTS 語言,現(xiàn)已上架華為應用商店。
中國工商銀行對倉頡的試點主要集中在工行個人手機銀行的“收支日歷”功能,如下圖所示,收支明細數(shù)據(jù)加載及展示涉及較為復雜的數(shù)據(jù)解析及視圖渲染工作。
倉頡在頁面編寫方面支持聲明式 UI,整體語法還是比較簡潔的;倉頡還可以和 ArkTS 語言混合開發(fā),基本是聲明 + 調用的常規(guī)步驟,也比較簡單。
李可研究員表示,中國工商銀行后續(xù)將逐步擴大倉頡語言的試點范圍。
力扣的倉頡全量開發(fā)
最后,力扣 LeetCode 移動端技術組長葉海健上臺演講。力扣是一個程序員 IT 技術職業(yè)化提升平臺,目前已有 1800 萬全球注冊用戶,不少程序員在上面練習算法題。
據(jù)介紹,力扣鴻蒙原生應用使用了倉頡語言全量開發(fā),該團隊還開發(fā)了一些倉頡的第三方庫。
力扣開發(fā)者也提到了聲明式 UI 開發(fā),并且倉頡提供了很簡單的 Web 組件(下圖右下角所示),可以直接調用。
倉頡具備類型推導能力,比如自動推導泛型、自動推導 let 變量類型、自動推導函數(shù)返回值類型等,可以減少開發(fā)者的類型標注負擔。
倉頡還在安全方面進行了優(yōu)化,編譯期避免了空指針、空引用等問題,要求變量必須初始化再使用,而且不提供 null 值。
此外,倉頡原生支持高并發(fā),線程切換的代碼相比 Java 和 Swift 更加簡潔,還有枚舉支持構造函數(shù)等。
倉頡還引入了 AI 輔助編程工具(BitFun FireCoder),力扣已于 5 月接入使用該工具,號稱“20% 的代碼可由 AI 自動生成”。
力扣鴻蒙原生應用投入 2 人研發(fā),歷時 4 個月完成了 App 核心功能開發(fā),代碼總量 20K+ 行。
性能方面,力扣鴻蒙原生應用(倉頡開發(fā))的冷啟動速度、多圖文章瀏覽體驗相比 Java & Kotlin 版本都有提升,大家具體看下圖效果:
力扣鴻蒙原生應用于 2024 年 2 月 1 日啟動開發(fā),計劃于 7 月 31 日上架首個 Beta 版本,9 月 30 日上架商用版 1.0,并于 11 月 30 日上架商用版 1.1。
廣告聲明:文內含有的對外跳轉鏈接(包括不限于超鏈接、二維碼、口令等形式),用于傳遞更多信息,節(jié)省甄選時間,結果僅供參考,IT之家所有文章均包含本聲明。