倉頡編程語言:華為技術(shù)創(chuàng)新與鴻蒙生態(tài)

0 評論 2268 瀏覽 2 收藏 7 分鐘

前段時(shí)間,華為在自己的開發(fā)者大會(huì)上發(fā)布了全新的開發(fā)語言——倉頡。這篇文章,我們就和作者一起來看看其影響。

在 2024 年 6 月 21 日的華為開發(fā)者大會(huì)上,華為發(fā)布了倉頡編程語言,一時(shí)間烽煙驟起,短短幾天,知乎、公眾號、抖音、B站等平臺上不僅有介紹甚至教程都立了起來,真不愧是“遙遙領(lǐng)先”。

華為倉頡自己給出的定位是:“一款面向全場景應(yīng)用開發(fā)的現(xiàn)代編程語言”,高效編程、安全可靠、輕松并發(fā)、卓越性能是它的設(shè)計(jì)理念。除此之外,倉頡還支持面向應(yīng)用開發(fā)的一系列工具鏈,包括語言服務(wù)(高亮、聯(lián)想)、調(diào)試(跨語言調(diào)試、線程級可視化調(diào)試)、靜態(tài)檢查、性能分析、包管理、文檔生成、Mock工具、測試框架等,進(jìn)一步提升軟件開發(fā)體驗(yàn)和效率。主打原生智能化、天生全場景、高性能、強(qiáng)安全,融入鴻蒙生態(tài),為開發(fā)者提供良好的編程體驗(yàn)。

早先,22 年的時(shí)候,華為就已經(jīng)推出過一門新的編程語言 ArkTs,ArkTs 聲稱是 Typescript 的超集,微軟也說 Typescript 是 Javascript 的超集。哈哈,Javascript:“蛤?”。但與 ArkTs 不同,倉頡編程語言是完全自研,沒有基于任何編程語言演進(jìn)。倉頡具有:簡潔、靜態(tài)編譯、多范式、類型安全、內(nèi)存安全、高效并發(fā)、兼容語言生態(tài)等特點(diǎn)。如果說 ArkTs 是對鴻蒙客戶端開發(fā)的賦能,那么鴻蒙服務(wù)端賦能者便是倉頡了。

一個(gè)新的編程語言的推出都面臨著推廣的難題,比如早些年尬吹的 vlang 現(xiàn)在也是不溫不火。之于華為,或許不然。據(jù)說,目前 HarmonyOS 已經(jīng)擁有超過 254 萬開發(fā)者,愚以為,出于對鴻蒙完整技術(shù)生態(tài)系統(tǒng)的戰(zhàn)略意圖、追求本土化編程語言的發(fā)展,此時(shí)推出倉頡編程語言似乎是恰到好處。這一舉措不僅有助于華為減少對外部技術(shù)的依賴,還可能在性能優(yōu)化和安全性方面帶來顯著優(yōu)勢。

倉頡文件拓展名為 .cj ,編寫時(shí)在頂層作用域中定義一個(gè) main 函數(shù)作為程序入口,通過編譯可以為特定平臺生成二進(jìn)制可執(zhí)行文件。我們看段代碼:

// example.cj

// let 定義變量,看起來像是 JS、Rust
let a = 1234

// 定義函數(shù),看起來像是 Go、Swift
func b(a: Int64, b: Int64): Int64 {
	retrun a + b
}

// 定義類,看起來像是 C++、Java
struct C {
	let w: Int64
	let h: Int64
	public init(w: Int64, h: Int64) {
		this.w = w
		this.h = h
	}
	public func area() {
		w * h
	}
}

// 定義枚舉,看起來像是 Java、TS
enum E { F | G }

// 程序入口
main() {
	println(a)
}

看起來確實(shí)簡單易懂,果然是集眾家之所長!總的來說,倉頡語言的推出為鴻蒙生態(tài)注入了新的活力,倉頡的發(fā)布展示了華為在技術(shù)自主和生態(tài)構(gòu)建方面的野心,可能對中國IT產(chǎn)業(yè)產(chǎn)生深遠(yuǎn)影響,其未來發(fā)展前景值得期待。

隨著語言的成熟和生態(tài)的完善,我們可能會(huì)看到以下發(fā)展:

  • 跨設(shè)備應(yīng)用開發(fā):倉頡有望成為開發(fā)跨設(shè)備、跨場景應(yīng)用的首選語言,充分發(fā)揮鴻蒙分布式能力的優(yōu)勢。
  • 人工智能與物聯(lián)網(wǎng)融合:倉頡可能在智能家居、車聯(lián)網(wǎng)等領(lǐng)域發(fā)揮重要作用,推動(dòng)AI與IoT的深度融合。
  • 生態(tài)系統(tǒng)擴(kuò)張:預(yù)計(jì)會(huì)有更多第三方開發(fā)者加入,豐富鴻蒙應(yīng)用商店的內(nèi)容,形成良性循環(huán)。
  • 教育領(lǐng)域滲透:倉頡可能被引入編程教育,培養(yǎng)新一代適應(yīng)鴻蒙生態(tài)的開發(fā)者。
  • ……

在國內(nèi),倉頡是否能夠迅速擁有一席之地,尚未可知。我猜測,要不了多久許多國企將會(huì)率先把倉頡作為應(yīng)聘的技能之一了。而華為和倉頡的野心絕不僅限于國內(nèi)市場,在全球范圍內(nèi)或?qū)⒂瓉砀嗵魬?zhàn)。道阻且長,我認(rèn)為華為能夠妥善應(yīng)對這些挑戰(zhàn),倉頡語言有潛力成為推動(dòng)鴻蒙生態(tài)和中國 IT 產(chǎn)業(yè)發(fā)展的重要力量。

作為產(chǎn)品經(jīng)理,雖然我們不會(huì)從事編碼工作,了解基本技術(shù)知識還是有必要的。倉頡開發(fā)的應(yīng)用或?qū)⑦\(yùn)行在鴻蒙系統(tǒng)上,了解倉頡也是熟悉鴻蒙生態(tài)的一環(huán)。有些文章聲稱“倉頡性能超越 Java、Go、Swift”,但我們并沒有看到任何有用的數(shù)據(jù)指標(biāo),尬吹只會(huì)讓人們產(chǎn)生抵觸心理,希望大家都能客觀看待。

最后,想要了解更多關(guān)于倉頡編程語言,我建議您直接訪問官網(wǎng):https://developer.huawei.com/consumer/cn/cangjie

倉頡,哪一點(diǎn)最能打動(dòng)你?

本文由 @希嘉嘉 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理。未經(jīng)作者許可,禁止轉(zhuǎn)載

題圖來自Unsplash,基于CC0協(xié)議

該文觀點(diǎn)僅代表作者本人,人人都是產(chǎn)品經(jīng)理平臺僅提供信息存儲空間服務(wù)

更多精彩內(nèi)容,請關(guān)注人人都是產(chǎn)品經(jīng)理微信公眾號或下載App
評論
評論請登錄
  1. 目前還沒評論,等你發(fā)揮!