angularjs.js 1.3是一款優(yōu)秀的js框架。angularjs使用了不同的方法,它嘗試去補(bǔ)足HTML本身在構(gòu)建應(yīng)用方面的缺陷。它通過使用我們稱為標(biāo)識(shí)符(directives)的結(jié)構(gòu),讓瀏覽器能夠識(shí)別新的語法。
使用回調(diào):回調(diào)的使用會(huì)打亂你的代碼的可讀性,讓你的代碼變得支離破碎,很難看清本來的業(yè)務(wù)邏輯。移除一些常見的代碼,例如回調(diào),是件好事。大幅度地減少你因?yàn)镴avaScript這門語言的設(shè)計(jì)而不得不寫的代碼,能讓你把自己應(yīng)用的邏輯看得更清楚。
手動(dòng)編寫操作DOM元素的代碼:操作DOM是AJAX應(yīng)用很基礎(chǔ)的一部分,但它也總是很“笨重”并且容易出錯(cuò)。用聲明的方式描述的UI界面可隨著應(yīng)用狀態(tài)的改變而變化,能讓你從編寫低級(jí)的DOM操作代碼中解脫出來。絕大部分用AngularJS寫的應(yīng)用里,開發(fā)者都不用再自己去寫操作DOM的代碼,不過如果你想的話還是可以去寫。
對(duì)UI界面讀寫數(shù)據(jù):AJAX應(yīng)用的很大一部是CRUD操作。一個(gè)經(jīng)典的流程是把服務(wù)端的數(shù)據(jù)組建成內(nèi)部對(duì)象,再把對(duì)象編成HTML表單,用戶修改表單后再驗(yàn)證表單,如果有錯(cuò)再顯示錯(cuò)誤,然后將數(shù)據(jù)重新組建成內(nèi)部對(duì)象,再返回給服務(wù)器。這個(gè)流程里有太多太多要重復(fù)寫的代碼,使得代碼看起來總是在描述應(yīng)用的全部執(zhí)行流程,而不是具體的業(yè)務(wù)邏輯和業(yè)務(wù)細(xì)節(jié)。
開始前得寫大量的基礎(chǔ)性的代碼:通常你需要寫很多的基礎(chǔ)性的代碼才能實(shí)現(xiàn)一個(gè)“Hello World”的應(yīng)用。用AngularJS的話,它會(huì)提供一些服務(wù)讓你很容易地正式開始寫你的應(yīng)用,而這些服務(wù)都是以一種Guice-like dependency-injection式的依賴注入自動(dòng)加入到你的應(yīng)用中去的,這讓你能很快的進(jìn)入你應(yīng)用的具體開發(fā)。特別的是,你還能全盤掌握自動(dòng)化測試的初始化過程。