第1071章倉頡的路線之爭
而此刻會議室的另一邊,終端BG總裁姚塵風看著台上正在詳細講解技術細節的餘新峰,腦海中也不由浮現出“倉頡”專案啟動初期,團隊內部關於技術路線的那場激烈爭論。
這支由餘新峰組建起來的程式語言團隊,雖然匯聚了一批國內優秀的青年才俊,但他們中的大多數人,此前並沒有從頭開始設計和開發大型通用程式語言的完整經驗。
大家都清楚,通用語言的技術難度和複雜性,遠高於為特定領域設計的專用語言。
在“倉頡”語言的起步路線上,團隊內部出現了明顯的分歧。
有一部分專家提出,應該基於JavaScript語言進行改進和增強。
他們的理由很充分:
JavaScript在Web前端領域佔據著絕對的統治地位,生態極其繁榮,像微信小程式等國民級應用,其技術底座就與JavaScript密切相關。
JavaScript的優勢在於開發便捷、敏捷性強、動態型別靈活、無需編譯即可執行,學習和上手成本相對較低。
但是,這個提議幾乎被華興高層和餘新峰團隊核心毫不猶豫地否決了。
為什麼?因為安全性!
JavaScript作為動態型別語言,其在型別安全方麵的天然劣勢,是其無法逾越的鴻溝。
而對於華興立誌要打造麵向萬物互聯時代的鴻蒙作業係統而言,安全性是底線,是生命線!
開放的鴻蒙生態需要應對來自全球各種複雜場景和潛在威脅,任何可能引入安全漏洞的技術選擇都是不可接受的。
缺乏嚴格型別檢查的動態語言,在大型複雜專案開發中,更容易出現難以在編譯期發現的潛在錯誤,這對係統安全是致命的。
此外,在效能方麵,動態型別語言在執行時需要進行型別判斷和轉換,其執行效率、記憶體佔用和功耗控製,往往難以滿足鴻蒙係統對多種終端裝置(尤其是資源受限的IoT裝置)的苛刻要求。
選擇JavaScript路線,無異於從一開始就背上了沉重的“歷史技術債務”,未來將步履維艱。
經過審慎的評估與激烈的討論,華興最終拍板:
“倉頡”必須定位為一款自研的、靜態型別的程式語言。
它的對標物件,是蘋果的Swift、安卓早期依賴的Java和現在主推的Kotlin這些成功應用於大型移動生態的語言,無一例外都是靜態型別。
靜態型別語言在編譯階段就能發現大量型別錯誤,極大地提升了程式碼的健壯性和安全性。
同時,由於其型別資訊在編譯期確定,編譯器可以進行更深層次的優化,通常能帶來更好的執行時效能。
當然,華興也考慮到開發者的習慣和遷移成本。
為了讓來自不同技術背景的開發者能夠相對平滑地過渡到“倉頡”,團隊決定採用“多正規化”的語言設計策略。
這意味著“倉頡”會借鑒和融合多種程式設計正規化中通行的、優秀的表達方式,盡量讓它的語法和特性與一些主流的程式設計風格保持近似性。
姚塵風回想起餘新峰當時的解釋:
“我們可以把‘倉頡’看作類似Swift那種集大成的語言,它應該能讓熟悉蘋果或安卓開發的開發者,感受到一種技術上的親近感,從而更容易切換到‘倉頡’上進行開發。”
團隊在每一個語言特性的設計上都投入了大量精力進行重新思考和自主實現,力求做到既先進又實用。
“所以,”餘新峰曾總結道。
“等到‘倉頡’語言正式釋出後,我們給開發者的選擇會是靈活的。
習慣用我們基於TypeScript擴充套件的ArkTS的開發者,可以繼續使用ArkTS;
而追求更高效能、更強型別安全的開發者,則可以選用‘倉頡’。
‘倉頡’的目的,不是在開發者工具箱裏替換掉別的工具,而是為他們增加一種更強大、更可靠的新選擇。”
姚塵風對此深表贊同。
生態建設不能一蹴而就,更需要給開發者足夠的過渡空間和選擇權。
“倉頡”的價值,在於為華興未來的生態發展,提供一個更具潛力、更自主可控的底層技術選項。
演示告一段落,餘新峰開始向各位董事彙報“倉頡”專案具體的推進過程。
他的語氣逐漸變得沉穩,充滿了技術人的篤定。
“從2019年8月1日專案正式立項起,我們程式語言實驗室就開始了緊張的研發工作。”
餘新峰操作PPT,展示著專案裡程碑圖。
“但一門程式語言的成熟,不僅僅在於語言本身的設計和編譯器實現,更在於它能否經得起真實業務場景的考驗,需要強大的標準庫、框架和工具鏈支撐。”
他目光掃過在場的各位高管,重點看向了姚塵風和陳默:
“幸運的是,我們並非孤軍奮戰。
在公司的大力協調下,除了我們核心的程式語言團隊,華興其他產品線的兄弟團隊也很快加入進來,為我們提供了寶貴的‘試驗田’。”
他切換了一張PPT,上麵顯示著“資料通訊產品線”的字樣和一些網路裝置的圖片。
“我們選定的第一個內部深度試用場景,是公司強大的資料通訊產品線。”
餘新峰解釋道:
“選擇這裏,主要有幾個原因。
首先,負責資料通訊軟體和創新的主要領導和專家劉子昂總,他本身就是我們中央軟體院編譯器和程式語言實驗室的創始人之一,對程式語言和底層技術有著深刻的理解和情懷,給予了我們極大的支援。”
“其次,也是更重要的一點,”他加重了語氣。
“資料通訊產品線對軟體的質量要求極高!
通訊裝置需要7x24小時穩定執行,對軟體的可靠性、效能、安全性有著近乎苛刻的標準。
尤其是在追求商用化的過程中,從程式設計風格、程式碼規範、靜態檢查工具,到動態測試、除錯工具,都需要一套完整、嚴謹的流程和體係。”
“這對於尚處在發展初期的‘倉頡’語言來說,是一個絕佳的、全方位的試煉環境。”
餘新峰臉上露出一絲感激的笑容。
“資料通訊產品線的同事們,願意冒著一定的風險,將他們部分非核心但關鍵的模組,嘗試用‘倉頡’進行重構或新開發。
這過程中,我們暴露問題、解決問題,共同打磨‘倉頡’的語言特性、編譯器穩定性、除錯工具鏈的易用性。
每一個BUG的修復,每一次效能的優化,都讓‘倉頡’變得更加堅實。”
他展示了一些內部資料:
看女頻小說每天能領現金紅包🧧