課程:Java程序設計 班級:1652班 姓名:賈普涵 學號:20165204 成績:java
指導教師:婁嘉鵬 實驗日期:2018年4月16日
實驗時間:15:35 - 17:15git
實驗序號:二 實驗名稱:Java面向對象程序設計設計模式
實驗內容:瀏覽器
1 初步掌握單元測試和TDD網絡
2 理解並掌握面向對象三要素:封裝、繼承、多態編輯器
3 初步掌握UML建模ide
4 熟悉S.O.L.I.D原則函數
5 瞭解設計模式工具
實驗要求:單元測試
1 沒有Linux基礎的同窗建議先學習《Linux基礎入門(新版)》《Vim編輯器》 課程;
2 完成實驗、撰寫實驗報告,注意實驗報告重點是運行結果,遇到的問題(工具查找,安裝,使用,程序的編輯,調試,運行等)、解決辦法(空洞的方法如「查網絡」、「問同窗」、「看書」等一概得0分)以及分析(從中能夠獲得什麼啓示,有什麼收穫,教訓等);
3 實驗報告中統計本身的PSP(Personal Software Process)時間;
4 嚴禁抄襲。
按照老師的教程的詳細的指導,比較順利地完成了要求的任務。
可是遇到了很多問題
在成功進入以後,我卻發現個人plugin中多了一堆(以下圖)。固然並無阻礙我成功完成實驗,只不過很疑惑是哪裏冒出來的。
使用TDD進行測試,首先要知道StringBuffer類中的測試內容都是什麼意思。
charAt(int i) 返回索引的i值,從0開始計數。
capacity() string分配的儲存容量
indexOf(String s) 檢索相關位置的字符串
length() 字如其名,字符串的長度。
以後就可以本身編寫測試代碼了(這裏皮了一下),實驗截圖以下。
如圖所示,四個測試都成功了。
體會OCP原則和DIP原則的應用。
根據老師提供的教程,成功的改成了Float要求。
使用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)
測試代碼運行成功截圖以下
步驟 | 耗時 | 百分比 |
---|---|---|
學習並設計 | 100min | 50% |
代碼實現 | 40min | 20% |
截圖、上傳、博客 | 60min | 30% |
JUnit確實是很是強大的測試工具,第一次使用以爲是本身找錯誤,讓電腦跑正確。後來慢慢變成電腦幫我找出錯誤,讓程序跑正確。本次的實驗任務難度明顯提高,花費了我大量的時間來逐步完成。其實總共花的時間比PSP表中多得多,可是有效學習時間大體是我表格中所統計的(總共的時間其實有0.7天了)。之後效率仍是須要提高,繼續將IDEA這個工具用的更加駕輕就熟。