《英雄聯盟》宣佈停用“所有人聊天”功能
第1次任務:購物車程式的面向物件設計
目錄目標
- 學會使用講故事的方式找到系統中可能包含的類與屬性
- 理解封裝
任務
- 編碼規範:使用英文對類、方法、包進行命名(查英文詞典,不得出現拼音)。參考JAVA編碼規範,進行類命名,方法命名、包命名,合適的縮排,有意義的變數名。見參考資料1中的1.1-1.4。
- 前期調查與功能設計:調查京東商城或者亞馬遜商城中的購物車,體驗從搜尋商品、加入購物車、操作購物車、下單全過程,思考該過程可能包含的類。演示中要求圖多字少。
- 面向物件設計:以面向物件的方法編寫購物車程式碼。先設計有什麼類,再考慮什麼方法放到那個類中合適。初期可不用完成具體功能,只要將類名、類之間的關係、方法名設計好即可。見參考資料2、3。注意學習類與類之間的關係(先重點掌握關聯關係與依賴關係)。
- PPT製作或部落格製作並上臺演示:演示前,請務必自己在同學面前預演一遍。
注意:初期將重點放在面向物件設計、命名規範。
人員分工
任務 | 姓名 |
---|---|
編碼規範、前期調查與功能設計 | 原嘉怡 |
面向物件設計 | 黃靜 |
部落格製作 | 原嘉怡、黃靜 |
前期調查
我們以京東商城為例,體驗從搜尋商品、加入購物車、操作購物車、到最後下單的全過程,並對此過程進行思考和學習,設計自己的購物車相關程式碼。
-
首先,進入京東商城首頁,可以看到有一個搜尋欄,右方為自己的購物車,左下方還有商品的類別檢索,以及各個市場或活動會場的入口。
-
然後,在搜尋欄中輸入想要查詢的商品,點選搜尋,出現大量商品可供選擇,還可根據上方的類別索引更加精確地尋找商品。商品上有單價與加入購物車標識。
-
點選商品,進去商品詳情頁面,內部包含商品名稱和圖片,包含使用者配送地址,還有商品種類,數量等選擇,最後選擇好後可加入購物車。
-
進入購物車介面,列舉了所有加入購物車的商品名稱,種類以及它們各自的單價,數量,總價,還包含整個訂單中的商品總數量,總價格
-
使用者可在購物車中進行對商品進行數量增減,選擇並刪除商品,選擇並下單商品等相關操作,且下單之後的商品也會被移出購物車
-
至此,完成了從搜尋商品、加入購物車、操作購物車、到最後下單的網上購物全過程
系統功能結構圖
系統描述
使用者 首先登陸主介面,選擇進入商城,即可在商場內搜尋自己需要購買的 商品 ,在商城中 展示使用者所搜尋查詢的商品 之後,包括 商品的編號,名稱,單價,類別等屬性 ,使用者可以選擇將想要購買的商品 加入購物車 ,若購物車中已有該商品,即直接 增加該商品的數量 。在進入購物車後,可對購物車中的商品進行 展示 ,也可對選中的商品進行 刪除 ,之後可根據使用者的選擇將選中的商品條目 生成訂單 , 計算總價 ,完成購買。已購買商品從購物車中 移除 ,使用者完成一次網上購物。
UML類圖
類的關鍵屬性與方法、類與類之間的關係,每個類的功能描述可由UML類圖展示。
面向物件的封裝性
商品的編號,名稱、單價,型別等屬性是購物車中商品的基本屬性,不會因為使用者的操作,如數量的增減而發生變化,在程式的執行過程中保持不變,因此,可對其進行封裝。面向物件的封裝效能夠把資訊封裝,保證資料的完整和安全,使資料不會發生變化。
封裝性包括屬性的封裝,方法的封裝,類的封裝,元件的封裝等。
- 屬性私有化,通過使用private修飾符關鍵字進行修飾,外部無法直接訪問
- 使用this關鍵字。this的使用,訪問本類當中的成員變數,需要使用格式:this.成員變數名
- 方法構造方法,建立物件時,就是在呼叫構造方法
主要功能與關鍵程式碼
選單介面
商品類
購物車類
關鍵部分流程圖
選單頁面
新增商品到購物車中
從購物車中刪除商品
計算訂單總價
參考資料
- 阿里巴巴Java開發手冊 終極版(1.3.0)
- 面向物件設計與UML類圖中的什麼是類與如何繪製類圖。
- 5分鐘讀懂UML類圖