20172311『Java程序设计』课程 结对编程练习_四则运算第一周阶段总结
20172311『Java程序設計』課程 結對編程練習_四則運算第一周階段總結
結對伙伴
學號 :20172307
姓名 :黃宇瑭
伙伴第一周博客地址: http://www.cnblogs.com/20172307hyt/p/8975967.html
需求分析
功能要求
1.自動生成題目
可獨立使用(能實現自己編寫測試類單獨生成題目的功能)
可生成不同等級題目,類似于:
1級題目:2 + 5 =;
10 - 5 =
之類的兩個數,一個運算符的題目
2.題目運算(判題)
可獨立使用
實現中綴表達式轉為后綴表達式并計算
判斷用戶答題正誤,并輸出正確結果
3.支持真分數
可獨立使用
實現分數算式的計算
3.題目去重(擴展需求,加分項)
可獨立使用
實現對自動生成表達式的去重:如下
若生成:2 + 5 =;
5 + 2 =
為同一題目對需求的理解
1.要有一個生成隨機題目的類,題目中的數可能分數,也可能是整數。 2.要有一個將中綴表達式轉化為后綴表達式的類
3.要有一個計算后綴表達式的類
4.要有一個判斷題目的類
5.將以上類進行組合寫出產品代碼后續拓展的可能性
具體的題目去重思路還沒有產生,問題應該不大。
設計思路
NML類圖
思路:
要有一個能夠生成隨機最簡分數的類,并將它運用到生成隨機題目的類中去,同時生成的題目中數字和運算符之間要有一個空格符,方便在轉換為后綴表達式的時候使用棧。最后要實現交互,即讓客戶回答問題,然后系統判斷是否正確并告訴客戶。相關過程截圖
生成隨機最簡分數的類Fraction
- 生成相應個數表達式的類Create
- 測試類CreateTest運行截圖
遇到的困難及解決方法
- 剛開始編寫用于生成整數類型的題目的類時出現邏輯錯誤,導致運行測試類時出現越界。
錯誤代碼截圖如下:
測試類運行結果如下:
改過后的代碼截圖如下:
錯因分析:錯誤代碼中紅圈標記的區域便是錯誤所在,該語句創建了一個空數組,與本意創建一個存放num個String型表達式的數組相違背。從而出現越界的現象。而改過之后的代碼中是在構造函數中對數組進行了實例化,也就達到目的了。
對結對的小伙伴做出評價
結對小伙伴黃宇瑭童鞋的優點就是能夠很認真的傾聽我的一些想法,同時能夠對我的想法提出自己的補充建議,而且他非常的耐心,樂于助人,在我敲代碼敲累了的時候他會主動幫我接力。缺點的話可能就是在編寫代碼的時候對自己的要求不夠嚴苛,有時會出現一些輸入錯誤。整體上來說,與黃宇瑭童鞋的結對學習甚是愉快,希望在接下來的結對編程項目中再接再厲,共同進步!!
PSP時間統計
| Planning | 計劃 | 60 | 70 |
| Estimate | 估計這個任務需要多少時間 | 30 | 30 |
| Development | 開發 | 600 | 700 |
| Analysis | 需求分析 (包括學習新技術) | 120 | 180 |
| Coding Standard | 代碼規范 (為目前的開發制定合適的規范) | 30 | 20 |
| Design UML | 設計項目UML類圖 | 60 | 90 |
| Coding | 具體編碼 | 180 | 210 |
| Code Review | 代碼復審 | 180 | 120 |
| Test | 測試(自我測試,修改代碼,提交修改) | 120 | 120 |
| Size Measurement | 計算工作量(實際時間 | 30 | 20 |
| Postmortem & Process Improvement Plan | 事后總結, 并提出過程改進計劃 | 30 | 60 |
| 合計 | 1440 | 1620 |
轉載于:https://www.cnblogs.com/zhaoxiaohai/p/8976043.html
總結
以上是生活随笔為你收集整理的20172311『Java程序设计』课程 结对编程练习_四则运算第一周阶段总结的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 对CAS机制的理解(二)
- 下一篇: JAVA中this和super用法