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

0 評(píng)論 1943 瀏覽 2 收藏 7 分鐘

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

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

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

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

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

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

// example.cj

// let 定義變量,看起來(lái)像是 JS、Rust
let a = 1234

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

// 定義類,看起來(lái)像是 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
	}
}

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

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

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

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

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

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

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

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

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

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

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

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

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