angularJS是以MVC為設(shè)計(jì)模式的JS框架
MVC(Model View Controller)設(shè)計(jì)模式(design pattern)也可以理解成運(yùn)行方式。每一個(gè)使用angularJS的程序都有這三個(gè)部分:
- 模型/Model,這個(gè)部分說(shuō)成是自建數(shù)據(jù)庫(kù)的話(huà)會(huì)更容易理解;
- 視圖/View,就是顯示的部分;
- 控制器/Controller,軟件代碼控制Model和View之間的相互作用。
在學(xué)習(xí)html、css和JavaScript的過(guò)程中經(jīng)常會(huì)看到framework、library這些詞匯,籠統(tǒng)的講,他們都是人們?yōu)榱丝焖俳鉀Q問(wèn)題、避免簡(jiǎn)單重復(fù)的體力勞動(dòng)而做的一些工具或加工到一定程度的原材料。
就好像你喜歡用豆腐做菜,可你并不需要每次都從種黃豆開(kāi)始,已經(jīng)有人做好了豆腐在那里賣(mài),你只要拿過(guò)來(lái)直接用就可以了。
而framework和library的區(qū)別,我現(xiàn)在的理解是,framework是比library加工程度更深的原材料。如果framework是豆腐,那library就是做豆腐需要的原材料。你當(dāng)然也可以使用做豆腐的原材料去做菜。
image
不過(guò)豆腐的例子不能很好的說(shuō)明的一點(diǎn)是好萊塢原則。開(kāi)腦洞的說(shuō)就是,豆腐可以自己使用你準(zhǔn)備好的東西如調(diào)味料、鍋和鏟子等把自己做成做成美味的菜肴。