Skip to content

Angular#

Angular is a JavaScript Framework which allows you to create reactive Single-Page-Application (SPA), and TypeScript as its programming language.

Introduction#

Comparison#

優勢 劣勢 機會 威脅
Angular 在企業及項目中有強大的市場份額,適合開發大型、複雜的應用程式 強大的工具組合,提供了豐富的功能和模組化的架構 學習曲線較陡峭,對於初學者來說可能需要更多時間去理解和掌握 隨著React和Vue的快速崛起,可能會面臨更多競爭和市場份額下降的壓力
React 適用於快速原型驗證和敏捷開發,在前端領域仍然具有很高的成長空間 擁有龐大而活躍的社群支持,提供了高效的虛擬dom和組件化開發方式 相比其他框架,react本身只是一個視圖層庫,需要額外整合其他庫才能構建完整應用程式 因為生態系統龐大而不斷增長,可能會出現版本更新和庫相容性問題
Vue 作為輕量級框架,易於集成到現有項目中,並且在中小型應用程式開發中具有潛力 簡單易學且輕量級,具有良好的文件資源和友好的生態系統 社群規模相對較小,在某些方面可能缺乏廣泛的支持和資源 視為新興框架,可能需要更多時間才能贏得企業級項目的信任和選擇

Development#

  • Angular 1 跟之後的版本差異很大,因此稱作 AngularJS,而之後的稱作Angular
  • Angular 2 是 Angular 1 重新編寫完成的,3被跳過,而之後每六個月出一次新的版本

Bootstrapping#

graph LR
    A[Index.html] --> B[Main.ts];
    B --> C[App.modules.ts];
    C --> D[App.component.ts];
    D --> E[App.component.html];

Angular 專案架構#

檔案 用途
node_modules 放置相關 Angular 的套件
.editorconfig 程式碼編輯器的設定
angular.json 工作區中所有CLI項目的配置
package-lock.json Node_module npm 客戶端所需的配件及版本
package.json 列出依存項目
tsconfig.json TS相關配置
component 應用程式主要的邏輯及頁面範本、樣式
assets 圖檔、樣式、JS…
index.html 應用程式的首頁
main.ts 應用程式主要的入口點