任樂樂東華大學信息科學與技術學院 上海 201620
AngularJS技術及其應用實踐研究
任樂樂
東華大學信息科學與技術學院 上海201620
摘要:近年來互聯網和信息技術的不斷進步,怎么高速構建有效、強大的動態網站成了很多人關注的焦點。此文是對以javas?cript為基礎的的動態web應用框架AngularJS和其特征的簡介與解析,了解其是怎么完成大量程序下的的高速開發。
關鍵詞:AngularJS;應用;開發
WEB應用程序的開發是互聯網的支柱,多年以來隨著HTML 和javascipt的發展,在web應用程序的領域中,動態web應用程序成了其主要開發方式,同時AJAX還能進行網頁的非同步更新,是其中不可缺少的核心技術。隨著軟件技術的高速發展,web應用程序在人們的目光中越來越受重視,迫切得需要一種更優良的開發體系,AngularJS應運而生,AngularJS是瀏覽器端的解決技術,是為了克服HTML在構建應用上的不足而設計出來的。在靜態網頁的解決方案中,我們通常使用HTML,但如果要構建WEB應用的話,HTML就顯得乏力。我們需要一種的技術能夠兼容HTML,從而解決在瀏覽器端能否實現動態網頁的問題。
AngularJS是基于JavaScript的一個MVC框架,由谷歌公司在09年公開發布,其作用是讓開發的流程變得簡便,減少測試中的難度,使得在編制web應用的流程中,能同時看到其代碼所表達的成果,有利于大面積得開發時,程序仍然能夠保持自身的功能特性。AngularJS的簡便之處在于,只要求在頁面中載入angularJS庫和在需要使用DOM上啟用np-app就行了。很大程度上降低了前端開發工作人員的學習曲線,讓程序的開發和維護以及測試變得更加簡潔明了。
Angularjs如此簡潔的原因在于,開發者起初創造這個框架時的想法具有開創性以及其特別的數據綁定方式,此文對AngularJS的一些特性進行一些闡述,來表明為什么AngularJS可以把web開發變得如此簡便。
(一)Mvc
MVC最早出現在19世紀70年代,model指代其中的數據,con?troller指代其內部的應用邏輯,view指代其表現的界面,而該設計模式的重點理念就是把之前三者的代碼區分開,從而提升了程序的遷移性,讓代碼的邏輯變得清晰扼要,mvc框架目前廣泛得運用在大部分的網絡開發語言中,Angularjs自身也是通過MVC來實現的,在AngularJS中,mvc的三個部分分別是存儲在對象的屬性中,是JavaScript類和是人們所說的DOM。
(二)數據綁定
Ajax可以完成應用的數據迭代,但要求用戶界面和JavasSript同時變動,而AngularJS使用的數據雙綁定辦法,讓不要求編寫任一代碼,就可以做到改動頁面的數據,Angularjs使用模板來完成數據的綁定,其中模板就是少許html片段,能夠載入或者自定義在< sript>標簽內,這里表現出AngularJS的又一個優勢是能夠自定義標簽,可在編寫網絡頁面的同時,可運用模板來自定義標簽,而不是只是可以運用html的規范標簽。
當模板載入以后,AngularJS會聯合模板和數據,然后顯示出數據和模板,且兩者的載入是非同步的,把模板和數據割裂開,就能讓模板被瀏覽器緩存,在初次要求之后,只要把數據載入到瀏覽器中就行,不只是提升了程序的特性,還完成了數據的隨時迭代,數據綁定的定義就是如此,在AngularJS中,有兩個數據綁定的方式,一個是使用mng-bind命令,另外一個是使用花括號來完成,兩個方法都是等值的,當頁面初次運用花括號的方式或許會讓用戶看到沒有全部載入的界面,因此在開始頁面的載入中,應該要求運用ng-blind命令來完成數據的綁定,從而優化界面的用戶體驗。
(三)指令
之前我們談到的ng-app,ng-blind全是AngularJS的內部命令,命令是綁定在DOM元素上的函數,其可用之處在于輔助定義應用程序的視圖,可通過調用方法和定義行為以及綁定controller和$scope對象。像上文所說,可使用命令來展開btml標簽,并讓加上新的標簽來完成特別的功能。
(四)依賴注入
AngularJS的另外一個有價值的內容就是依賴注入,即人們所說的簡便得獲得想要的東西但又不需要去建設其所依附的東西,這是一種最少知識原則設計模式的一個表現,詳細得說就是指當數據綁定后,能夠立馬注入$scope對象到controler內對數據的邏輯實施加工,而不用任一函數再去創建這個對象。
在實際的編程工作中,依賴注入在很大意義上使得動態web應用的開發得以加速。
從目前的情況來看AngularJS在前端框架中慢慢變得主流,但這并不是說明就沒有更好的替代品可以去替代,不過這一框架獲得了很多的開發者和公司的看好,對于個人而言,在AngularJS上的投資是一個非常安全的賭注,并且在未來的幾年將會獲得非常豐厚的回報,這對創業的人來說,建立一個幫助AngularJS開發者的團隊,就可以產生非常巨大的利益,從上面對AngularJS的分析來看,AngularJS必將成為下一代web開發的一項重要技術。
參考文獻:
[1]董英茹.簡談AngularJS在下一代Web開發中的應用[J].軟件工程師,2015,(5):30-31.
[2]陳濤.基于AngularJS和Bootstrap聊天室的設計與實現[J].電腦知識與技術,2015,(9):91-92,95.
[3]金稱雄,陳佳泉,鄭月齋等.基于AngularJS學生活動推廣平臺的設計與實現[J].科學導報,2015,(17):232.
[4]李紅.主流Javascript框架比較與分析[J].鞍山師范學院學報,2015,(4):40-47.
[5]張豐麒,王飛.ReactJS的新特性在Web開發中的應用[J].移動信息,2015,(10):71-72.