日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Angular学习记录一

發布時間:2025/6/17 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Angular学习记录一 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

http://angular.duapp.com/docs/guide/introduction

什么是Angular?

AngularJS是一個開發動態Web應用的框架。它讓你可以使用HTML作為模板語言并且可以通過擴展的HTML語法來使應用組件更加清晰和簡潔。它的創新之處在于,通過數據綁定和依賴注入減少了大量代碼,而這些都在瀏覽器端通過JavaScript實現,能夠和任何服務器端技術完美結合。

Angular是為了擴展HTML在構建應用時本應具備的能力而設計的。對于靜態文檔,HTML是一門很好的聲明式的語言,但對于構建動態WEB應用,它無能為力。所以,構建動態WEB應用往往需要一些技巧才能讓瀏覽器配合我們的工作。

通常,我們通過以下手段來解決動態應用和靜態文檔之間不匹配的問題:

  • 類庫?- 一些在開發WEB應用時非常有用的函數的集合。你的代碼起主導作用,并且決定何時調用類庫的方法。例如:jQuery等。
  • 框架?- 一種WEB應用的特殊實現,你的代碼只需要填充一些具體信息??蚣芷鹬鲗ё饔?#xff0c;并且決定何時調用你的代碼。例如:knockout,?ember等。

Angular另辟蹊徑,它嘗試去擴展HTML的結構來彌合以文檔為中心的HTML與實際Web應用所需要的HTML之間的鴻溝。Angular通過指令(directive)擴展HTML的語法。例如:

  • 通過{{}}進行數據綁定。
  • 使用DOM控制結構來進行迭代或隱藏DOM片段。
  • 支持表單和表單驗證。
  • 將邏輯代碼關聯到DOM元素上。
  • 將一組HTML做成可重用的組件。

一個完整的前端解決方案

在構建WEB應用的前端時,Angular提供的不是一個部分解決方案,而是一個完整的解決方案。它能夠處理所有你寫過的混雜了DOM和AJAX的代碼,并能夠將它們組織的結構良好。這使得Angular在決定應該怎樣構建一個CRUD應用時顯得甚至有些“偏執(opinionated)”,但是盡管它“偏執”,它也嘗試確保使用它構建的應用能夠靈活的適應變化。下面是Angular的一些出眾之處:

  • 構建一個CRUD應用時可能用到的所有技術:數據綁定、基本模板指令、表單驗證、路由、深度鏈接、組件重用、依賴注入。
  • 可測試性:單元測試、端到端測試、模擬對象(mocks)、測試工具。
  • 擁有一定目錄結構和測試腳本的種子應用。

Angular的可愛之處

Angular通過給開發者呈現更高層次的抽象來簡化應用的開發。和其他的抽象一樣,它也以損失靈活性為代價。換句話說,Angular并不是適合任何應用的開發,Angular考慮的是構建CRUD應用。幸運的是,絕大多數WEB應用都是CRUD應用。為了理解Angular適用哪些場合,知道它不適合哪些場合是很有幫助的。

對于像游戲和有圖形界面的編輯器之類的應用,會進行頻繁且復雜的DOM操作,和CRUD應用不同。因此,可能不適合用Angular來構建。在這種場景下,使用更低抽象層次的類庫可能會更好,例如:jQuery。

Angular之道

Angular是建立在這樣的信念之上的:即聲明式的代碼用在構建用戶界面和組裝軟件組件時更好,而命令式的代碼更擅長展現業務邏輯。

  • 將應用邏輯與DOM操作解耦,會大大提高代碼的可測試性。
  • 平等看待應用的測試和開發,測試的難度很大程度上取決于代碼的結構。
  • 將前端與服務器端解耦,這樣使得前端的開發和服務器端的開發可以齊頭并進,實現兩邊代碼的重用。
  • 框架在整個應用的開發流程中指導開發者:從用戶界面設計到實現業務邏輯,再到測試。
  • 化繁為簡,化整為零總是好的。

Angular將把你從下面的苦海中解脫出來:

  • 使用回調:回調會降低代碼的可讀性,是代碼變得零散。移除像回調之類的常見代碼是件好事,大幅移除因為JavaScript這門語言的不足而使你不得不寫的代碼,從而讓應用顯得更加清晰。
  • 以編程的方式操作HTML DOM:操作HTML DOM是AJAX應用中很基礎的一部分,但它不靈活并且容易出錯。通過聲明式的語句,描述UI該怎樣隨著狀態的改變而變化,能讓你從低級的DOM操作中解脫出來。絕大多數Angular的應用開發中,開發者都不需要自己去寫低級的操作DOM的代碼,盡管如果你非要這樣的話,也是可以的。
  • 在用戶界面中讀寫數據:AJAX應用中的絕大多數操作都是CRUD操作。一個典型的流程是從服務器端取到數據組裝成內部對象,然后寫到HTML的表單中,在用戶對表單進行修改之后,進行表單驗證,顯示表單驗證錯誤信息,然后將數據重新組裝成內部對象,再發給服務器。在這個流程中有很多重復的代碼要寫,而Angular消除了在這個流程中幾乎所有的重復代碼,使得代碼看起來只是在描述所有的執行流程,而不是所有的實現細節。
  • 在開始前寫大量的初始化代碼:一般需要寫很多的基礎性的代碼才能完成一個基本的AJAX的Hello World應用。在Angular的應用中,你可以通過一些服務來初始化應用,這些服務都是以類似于Guice的方式進行依賴注入的。這會讓你很快進入功能開發。另外,你還能完全控制自動化測試的初始化過程。

轉載于:https://www.cnblogs.com/xihuafeiyu/articles/3741523.html

《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀

總結

以上是生活随笔為你收集整理的Angular学习记录一的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。