iT邦幫忙

2021 iThome 鐵人賽

DAY 6
0
自我挑戰組

Angular 學徒之路 feat. TypeScript系列 第 6

Day 06:Angular 的主要特色與優點簡介

  • 分享至 

  • xImage
  •  

上一篇看完了 AngularJS 與 Angular 的差異後,我們今天要集中火力來看看 Angular 的主要特色。

  1. 可以跨平台開發:
    • Progressive Web Apps(Angular Mobile Toolkit):PWA 是把網站「漸進式」優化成具備 APP 的優點,使用者體驗也能提升。
    • Desktop Apps:搭配 Electron 框架就能開發出跨越 Windows、Mac、Linux 的桌面應用程式。
    • Native Apps:可搭配 Ionic NativeNativeScriptReact Native 開發跨行動平台的原生應用程式。

你可以想成,只要你會 Angular,許多開發都可以透過 Angular 來實現啦!

  1. 速度與效能較前一代優異非常多:

    • Code generation(AOT):在瀏覽器下載和執行程式碼之前的編譯階段,Angular 預先(AOT)編譯器會先把你的 Angular HTML 和 TypeScript 程式碼轉換成高效的 JavaScript 程式碼。 在建構期間編譯應用可以讓瀏覽器中的渲染更快速。

    翻譯成白話,就是 Angular 會先透過 AOT 幫你的程式碼動手腳,讓渲染速度提升。

    • Universal:Angular Universal可以在 server side 預先對網頁模版做處理,變成一個有資料的靜態頁面。可以在使用者要求資料的當下產生靜態頁面(加快首頁的載入速度),也可以事先產生好靜態檔案以供未來使用。(參考來源:用30天深入Angular 5的世界系列-[技術支援-4] Angular Universal
    • Code Splitting:可以透過路由的機制來實現延遲載入的功能,延遲載入可以縮小初始套件的尺寸,進而減少載入時間,在製作行動版頁面的時候,特別實用。
  2. 生產力大幅提升:

    • Templates:簡易而強大的範本語法可以提高開發效率。
    • Angular CLI:能透過命令列工具快整的建立模組、新增元件…等等。
    • IDE:搭配編輯器(VS Code)能使用程式碼自動完成、即時錯誤提示與程式碼建議。

這個不得不提,Angular 搭配 VS Code 真的是生產力加成,從 Vue 陣營跳過來的我,完全能感受到 VS Code 對 Angular 開發者的友善。

  1. 完整的開發體驗:
    • Testing:能結合 Karma 執行單元測試,結合 Protractor 執行 E2E 測試情境。
    • Animation:透過 Angular 直觀的 API 能完成複雜的頁面動畫處理。
    • Accessibility

上述的特點,我還不能體會,如果有興趣深入了解的朋友們,請再自行搜尋資源研究,但你可以理解成,使用 Angular,你就可以站在巨人的肩膀上進行開發,因為以上的特點都已經有人幫你想過,也都能透過 Angular 搭配好用的工具,降低前端開發的門檻。

主要亮點再整理:

  1. 效能改進(Performance):
    • 效能比第一代的 AngularJS 快了五至十倍。
    • 下載的 JS 大小比第一代還小,並且導入延遲載入機制。
  2. 高生產力(Productivity):
    • 官方提供許多開發工具可供使用。
    • 與 AngularJS 相比,移除了超過 40 個指令(Directives),讓開發與後續維護都更容易上手。
  3. 多樣平台(Versatility):
    • 在不同的平台底下都能使用 Angular 來開發。

真正優勢統整:

  1. 更熟悉的開發架構
    • 使用 TypeScript 開發,而 TypeScript 其實就可以視為 JavaScript,但是導入強型別的特性。
    • TypeScript 與 VS Code 的搭配十分良好,提供了如:IntelliSense 這樣的工具支援,讓開發過程更加順暢。
  2. 更低的學習門檻:
    • 減少了許多第一代 AngularJS 的抽象概念,讓剛入門的開發者能更容易上手。
  3. 更好的執行效率及行動化體驗:
    • 新一代的 Angular 通盤考量了如:所有的螢幕大小、觸控的操作、伺服器渲染技術及 SPA 等開發需求,大幅度改進了開發的效率及瀏覽的速度。
  4. 更清晰的專案架構及可維護性:
    • 官方文件提供了一整套的 Style Guide,只要參考官方文件的指引,就能開發出可維護性高、相依性低及開發速度快的 Web 應用程式,而這個 Web 應用程式在未來也不會變得更複雜,可維護性(Maintainability)也就成了新一代 Angular 很重要的優勢。

以上就是我們針對新一代 Angular 主要特色與優點的整理,看完手都癢起來了啊啊啊!!!


上一篇
Day 05:AngularJS?Angular?傻傻分不清楚?
下一篇
Day 07:開發 Angular 一定要會的 TypeScript
系列文
Angular 學徒之路 feat. TypeScript30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言