以淘寶的購物車為例
一、結(jié)合六個基本質(zhì)量屬性
可修改性
采用MVC設(shè)計模式的時候,可以將視圖、模型、控制器分析,將用戶動作、數(shù)據(jù)表示、應(yīng)用數(shù)據(jù)分離開來,如果用戶需要以不同的視圖來展示,只需要修改視圖中的代碼即可,對于模型和控制器的代碼,則不需要做改動,即可滿足要求,使得對代碼的修改非常方便。
易用性
用戶可以直接在商品展示界面中將商品添加進購物車,直接點開購物車就可以看到已經(jīng)添加的商品;刪除某一件商品時,也可以直接在商品的后面點擊刪除,確認之后,即可刪除。
安全性
實行對不同角色的不同權(quán)限的管理,比如買家賬號和賣家賬號,登錄之后,對應(yīng)的不同權(quán)限的操作。
可用性
淘寶實現(xiàn)7*24的可用性,如果某一個環(huán)節(jié)出了問題,使用MVC設(shè)計模式也可以快速的進行修復(fù)。
二、MVC設(shè)計模式具體在淘寶購物車當中的應(yīng)用。
每個層大概的負責(zé)的職責(zé),以及之間的關(guān)系。
假如以超市為例,進行購物流程,大概流程是:取得空購物籃—向購物籃中增減商品—結(jié)賬,我們對這個流程進行分析可以發(fā)現(xiàn),用戶需要隨時了解的信息是放入購物籃里的商品的品名、數(shù)量以及價格,在挑選商品階段關(guān)注的是商品的品名、單價和數(shù)量,在結(jié)帳時關(guān)注的是商品的總計價格,這些信息與購物籃中的物品有直接相關(guān)。伴隨著這個流程的是空購物籃的取得、購物籃內(nèi)商品的增減、購物籃在結(jié)帳后被清空這樣幾個狀態(tài)??梢园l(fā)現(xiàn),購物籃是整個購物交易過程中用戶關(guān)注信息和購物流程狀態(tài)變化的重要組成部分。我們可以用模型來表示購物籃,這個類設(shè)計中應(yīng)包含商品信息、價格和數(shù)量屬性,同時還要定義附加在屬性上的商品加入、刪除、價格計算等方法。用戶的購物動作導(dǎo)向觸發(fā)不同的方法以確定購物籃模型的不同的狀態(tài),而購物籃模型的狀態(tài)變化應(yīng)該能及時反映到用戶界面,透過用戶界面,可以了解到購物籃的信息,同時發(fā)出用戶的動作指令。我們可以采用多個不同的類,以視圖的方式來定義用戶界面,以控制器的方式定義用戶購物流程控制。
利用MVC設(shè)計模式,可以方便地設(shè)計出用于購物過程的相應(yīng)的類和對象,并以比較合理的方式將它們組織起來。在電子商務(wù)系統(tǒng)的研究中,實現(xiàn)系統(tǒng)代碼時,我們采用JSP實現(xiàn)用戶視圖,JSP和JavaBean作為模型,Servlet實現(xiàn)控制器,可以進行實現(xiàn)。
在瀏覽器的jsp頁面中顯示商品的信息,用戶在界面中進行添加商品操作之后,到達servlet控制器,然后選擇相應(yīng)的購物籃模型,可能會與數(shù)據(jù)庫進行交互,完成之后,再在購物車頁面中進行顯示出來。