1. 程式人生 > >172303 2017-2018-2 《程序設計與數據結構》實驗二報告

172303 2017-2018-2 《程序設計與數據結構》實驗二報告

ava boolean uml 包含 鏈接 屬性 ole mis err

172303 2017-2018-2 《程序設計與數據結構》實驗二報告

  • 課程:《程序設計與數據結構》
  • 班級: 1723
  • 姓名: 範雯琪
  • 學號:20172303
  • 實驗教師:王誌強
  • 助教:張旭升/劉偉康
  • 實驗日期:2018年4月17日
  • 必修/選修: 必修

1.實驗內容

  1. 初步掌握單元測試和TDD
  2. 理解並掌握面向對象三要素:封裝、繼承、多態
  3. 初步掌握UML建模
  4. 熟悉S.O.L.I.D原則
  5. 了解設計模式
  6. 完成藍墨雲上 (1)-(5)實驗。

2.實驗過程及結果

過程:

  • 本次實驗老師一共設置了5個提交節點分別是:
節點一
  • 參考IDEA 簡易教程完成單元測試的學習
  • 提交最後三個JUnit測試用例(正常情況,錯誤情況,邊界情況)都通過的截圖,截圖上要有畫圖加水印,輸入自己的學號
  • 本提交點考查JUnit會不會使用,測試用例至少要包含正常情況,錯誤情況,邊界情況的測試
節點二
  • 參考積極主動敲代碼,使用JUnit學習Java
    以 TDD的方式研究學習StringBuffer
  • 提交你的單元測試用例和測試通過的截圖,截圖要加上學號水印
  • 測試自己會不會寫JUnit測試用例
節點三
  • 參考實驗二 Java面向對象程序設計
    對設計模式示例進行擴充,體會OCP原則和DIP原則的應用,初步理解設計模式
  • 用自己的學號%6進行取余運算,根據結果進行代碼擴充:
    • 0:讓系統支持Byte類,並在MyDoc類中添加測試代碼表明添加正確,提交測試代碼和運行結的截圖,加上學號水印
    • 1:讓系統支持Short類,並在MyDoc類中添加測試代碼表明添加正確,提交測試代碼和運行結的截圖,加上學號水印
    • 2:讓系統支持Boolean類,並在MyDoc類中添加測試代碼表明添加正確,提交測試代碼和運行結的截圖,加上學號水印
    • 3:讓系統支持Long類,並在MyDoc類中添加測試代碼表明添加正確,提交測試代碼和運行結的截圖,加上學號水印
    • 4:讓系統支持Float類,並在MyDoc類中添加測試代碼表明添加正確,提交測試代碼和運行結的截圖,加上學號水印
    • 5:讓系統支持Double類,並在MyDoc類中添加測試代碼表明添加正確,提交測試代碼和運行結的截圖,加上學號水印
節點四
  • 提交:單元測試代碼和運行成功截圖及碼雲上代碼鏈接,截圖要加上學號水印
  • 任務:以TDD的方式開發一個復數類Complex,要求如下:
// 定義屬性並生成getter,setter
double RealPart;
double ImagePart;
// 定義構造函數
public Complex()
public Complex(double R,double I)

//Override Object
public boolean equals(Object obj)
public String toString()

// 定義公有方法:加減乘除
Complex ComplexAdd(Complex a)
Complex ComplexSub(Complex a)
Complex ComplexMulti(Complex a)
Complex ComplexDiv(Complex a)
節點五
  • 使用StarUML對實驗二中的代碼進行建模,發類圖的截圖,加上學號水印
  • 類圖中至少兩個類
  • 類,繼承,接口實現,組合在UML中表達

結果:

節點一

技術分享圖片

節點二

技術分享圖片
技術分享圖片
技術分享圖片

節點三

技術分享圖片
技術分享圖片
技術分享圖片

節點四

碼雲鏈接
技術分享圖片

節點五

技術分享圖片

3.實驗過程中遇到的問題和解決過程

  • 問題1:做實驗二時,所寫的容量顯示錯誤
    技術分享圖片
    技術分享圖片
  • 問題1解決方案:通過測試顯示結果修改了容量,但不清楚為什麽要這麽改。詢問張旭升學長後知道了是根據輸入的字符數量規定好的。
  • 問題2:UML類圖的使用
  • 問題2解決方案:當時做的時候特別匆忙做的特別特別爛...我都不好意思拿節點五的分了。後來又重新寫了一遍:為了鞏固依照PP9.3的程序寫了它的UML類圖。
    舊圖:
    技術分享圖片
    新圖:
    技術分享圖片
    PP9.3:
    技術分享圖片

其他(感悟、思考等)

感悟

本周的實驗其實很簡單,只要照著博客一步一步踏實地做下去就好,但做完發現自己學會了很多東西。首先使用JUnit真的能節省很多時間,然後學會使用UML類圖讓自己對每個程度的整體結構有了一個非常明晰的認識。

參考資料

  • 實驗二《Java面向對象程序設計》的一點說明

172303 2017-2018-2 《程序設計與數據結構》實驗二報告