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 |
應用程式主要的入口點 |