Dart是由谷歌開發(fā)的一種計(jì)算機(jī)編程語言,于2011年10月10日發(fā)布。它是一種面向?qū)ο蟮?、類定義的、單繼承的語言,語法類似于c語言。
Dart被用于web、服務(wù)器、移動(dòng)應(yīng)用和物聯(lián)網(wǎng)等領(lǐng)域的開發(fā)。它支持接口、混入、抽象類、具體化泛型、可選類型和sound type system。Dart采用類別為基的程式設(shè)計(jì),只允許單一繼承。它是寬松開源許可證(修改的BSD證書)下的開源軟件,可以轉(zhuǎn)譯為ECMAScript,也可以編譯為本地代碼。Dart支持多種編程模式,包括面向?qū)ο缶幊?、函?shù)式編程等,同時(shí)也提供了豐富的庫,如dart:async庫、dart:io庫、dart:convert庫等,這些庫提供了各種常見任務(wù)的解決方案,如網(wǎng)絡(luò)通信、JSON解析、加密解密等Dart的目標(biāo)是成為下一代結(jié)構(gòu)化Web開發(fā)語言。
發(fā)展歷程
谷歌發(fā)布網(wǎng)絡(luò)開發(fā)語言Dart早期預(yù)覽版
谷歌于2011年10月10日發(fā)布了網(wǎng)絡(luò)編程語言Dart的“早期預(yù)覽版”。谷歌希望利用這款語言,幫助程序開發(fā)者克服ECMAScript語言的缺點(diǎn)。
Dart開發(fā)團(tuán)隊(duì)主管拉爾斯·巴克(Lars Bak)在谷歌官方博客中詳細(xì)介紹了這款語言。巴克稱,Dart支持所有項(xiàng)目,從小型松散的項(xiàng)目到gmail和谷歌文檔這種大型復(fù)雜的項(xiàng)目。在今天的一次采訪中巴克稱,如果想讓互聯(lián)網(wǎng)變得更美好,那就必須創(chuàng)新,其中就包括開發(fā)新的編程語言。
另外,谷歌的Dart語言網(wǎng)站也在今天上線,其中包括編寫Dart程序的開源工具、代碼范例和教程、支持軟件的支持函數(shù)庫、Dart語言規(guī)范和討論論壇。上個(gè)月爆出的一份谷歌2010年內(nèi)部備忘錄顯示,Dart的目標(biāo)就是要代替ECMAScript網(wǎng)絡(luò)開發(fā)通用語言的地位,但此次巴克在采訪中表示,Dart不會(huì)替代JavaScript。JavaScript是當(dāng)今網(wǎng)絡(luò)的基石,它還將在很長一段時(shí)間內(nèi)保持這種地位。
巴克表示,目前的當(dāng)務(wù)之急是獲得外界對Dart的看法,并吸引他們參與Dart程序的開發(fā)。Dart目前是公司關(guān)注的編程語言,谷歌希望Dart能獲得正面評(píng)價(jià)。
谷歌發(fā)布附帶Dart 引擎的Chromium
Web 編程吸引人的特性之一便是迅速的開發(fā)周期:源碼改動(dòng)后生效所需的時(shí)間不到一秒。谷歌 希望為 Dart 語言的開發(fā)者提供相同的體驗(yàn),于是將 Dart 虛擬機(jī)整合進(jìn) Chromium 瀏覽器,并在今天發(fā)布了適用于 麥金塔 與 Linux 平臺(tái)的 Dartium。
該技術(shù)預(yù)覽版本允許用戶通過 Chromium 中所整合的虛擬機(jī)(Dart VM)直接運(yùn)行 Dart 語言編寫的程序,免去了單獨(dú)編譯的步驟。以后這些程序?qū)?Dart VM 更快的性能與較低的啟動(dòng)延遲中受益。
Dart 從設(shè)計(jì)之初就為配合現(xiàn)代 web 整體運(yùn)作而考慮,開發(fā)團(tuán)隊(duì)也同時(shí)在持續(xù)改進(jìn) Dart 向 ECMAScript 轉(zhuǎn)換的快速編譯器。Dart VM 以及現(xiàn)代 JavaScript 引擎(V8 等)都是 Dart 語言的首選目標(biāo)平臺(tái)。
這次發(fā)布的整合 Dart VM 的 Chromium 只是技術(shù)預(yù)覽版,不應(yīng)該用于日常瀏覽。待更多測試與開發(fā)者反饋后,開發(fā)團(tuán)隊(duì)計(jì)劃最終將 Dart VM 整合到 Google Chrome 分支中。
2012年4月18日,Google發(fā)布了Dart M4更新,在這次的更新中,不但加入了大量新特性,dart vm以及編譯出后js代碼在運(yùn)行速度上都有了顯著的提高。此后的版本將會(huì)把重心轉(zhuǎn)到穩(wěn)定性和速度上,而不會(huì)在破壞現(xiàn)有api的兼容性。與此同時(shí)DartEditor也發(fā)布了更新并強(qiáng)化了對webgl的支持。對那些想投入html5懷抱但又厭惡js的開發(fā)者們來說,是時(shí)候嘗試一下Dart語言了。
谷歌發(fā)布DartPad
開發(fā)人員應(yīng)該有一個(gè)快速迭代、即 時(shí)反饋以及 Zero-Install Tools 的環(huán)境來研究語言和API。為了幫助新手和經(jīng)驗(yàn)豐富的Dart開發(fā)人員,谷歌發(fā)布了DartPad 1.0,以嘗試在瀏覽器中用無摩擦方式(無任何中間環(huán)節(jié))來研究Dart代碼和API。
DartPad支持完整的Dart語言、核心鏈接庫,甚至是HTML/層疊樣式表。同時(shí),支持代碼提示,即時(shí)錯(cuò)誤信息提示,實(shí)時(shí)API等功能,有經(jīng)驗(yàn)的Dart開發(fā)者會(huì)發(fā)現(xiàn),DartPad是一種最簡單的使用Dart語言的方法,并且可以學(xué)習(xí)新的模式和習(xí)慣。
參考資料 >
Dart 開發(fā)語言.Dart.2024-02-29
Dart語言教程.易百教程網(wǎng).2024-02-29
Dart語言實(shí)戰(zhàn):基于Angular框架的Web開發(fā).掌橋科研.2024-02-29