Angular 4.0發(fā)布,致力于減小代碼體積

責(zé)任編輯:editor004

作者:David Iffland

2017-04-13 11:36:40

摘自:INFOQ

谷歌發(fā)布了廣受歡迎的Angular JavaScript框架的4 0版本,該版本致力于縮小生成代碼的體積,以及保持框架的簡化發(fā)布計劃。在候選發(fā)布期間,據(jù)許多開發(fā)人員反饋,遷移到版本4使發(fā)布環(huán)境js包(production budles)減少了幾百KB。

谷歌發(fā)布了廣受歡迎的Angular JavaScript框架的4.0版本,該版本致力于縮小生成代碼的體積,以及保持框架的簡化發(fā)布計劃。

因?yàn)锳ngular改為使用語義版本控制,所以4.0版本的發(fā)布并不像2.0版本那么重大。 4.0版本僅僅意味著有開發(fā)人員需要注意的突破性變化。所幸這些變化影響并不大,不需要重新學(xué)習(xí)整個框架。Angular開發(fā)組成員Rob Wormald表示,“大多數(shù)開發(fā)人員應(yīng)該只需要更新自己的依賴并進(jìn)行重新構(gòu)建。”

Angular跳過了版本3,直接發(fā)布了版本4,以便與已經(jīng)采用了3.X版本號的Angular router版本保持同步。

4.0版本有很多新功能,其中大部分都是很小的功能改動。 最大的改進(jìn)之一就是Angular的Ahead-Of-Time(AOT)編譯器生成代碼的方式。 Angular 開發(fā)組成員Tobias Bosch在設(shè)計文檔中提道,一個源代碼僅有245字節(jié)的示例模板被編譯為32.5倍大的7,951字節(jié)的TypeScript代碼。 雖然使用AOT編譯器對于Angular性能有積極的影響,但傳送到瀏覽器的帶寬負(fù)荷很大。 在他的原型中,Bosch能夠?qū)⒕幾g的TypeScript代碼降低到1,833字節(jié)(比原始代碼大7.5倍,但小于原先編譯器結(jié)果的25%)。 在4.0版本的公告中,Google提道,開發(fā)人員應(yīng)該注意一個重大改進(jìn):

我們已經(jīng)對AOT生成的代碼進(jìn)行了改進(jìn)。在大多數(shù)情況下,這些改進(jìn)會使生成的代碼大小減少約60%。 模板越復(fù)雜,改進(jìn)越明顯。

在候選發(fā)布期間,據(jù)許多開發(fā)人員反饋,遷移到版本4使發(fā)布環(huán)境js包(production budles)減少了幾百KB。

在Hacker News網(wǎng)站,開發(fā)者寫道“從v2升級到v4是無感的”,而且Angular開發(fā)者Cory Rylan告訴InfoQ“這是嘗試Angular的最好時機(jī)了,性能改進(jìn)非常驚人!”

這個版本的Angular的TypeScript直接升級到2.1版本。之前使用的是1.8版本的TypeScript,沒有向后兼容性。 其他重要變化是:

動畫功能單獨(dú)打包(package)

Angular Universal(服務(wù)器端渲染項(xiàng)目)與Angular同步發(fā)布(現(xiàn)在由Angular團(tuán)隊(duì)維護(hù))

模板的Source Map功能

優(yōu)化 *ngIf和*ngFor指令

隨著此次發(fā)布,Angular團(tuán)隊(duì)已經(jīng)履行了他們每六個月發(fā)布一次的承諾。 下一個主要版本(至5.0)將于2017年10月的某個時間發(fā)布。完整的發(fā)布時間表可在GitHub上找到。

查看英文原文:Angular 4.0 Released with a Focus on Shrinking App Size

鏈接已復(fù)制,快去分享吧

企業(yè)網(wǎng)版權(quán)所有?2010-2024 京ICP備09108050號-6京公網(wǎng)安備 11010502049343號