2、結對成員對四則運算項目代碼審查結果表:html
部分git |
內容github |
張瑩編程 審查結果設計模式 |
王祥月數組 審查結果網絡 |
一、概要數據結構 部分函數 |
(1)代碼符合需求和規格說明嗎post |
符合 |
符合 |
(2)代碼設計是否考慮周全 |
是 |
是 |
|
(3)代碼可讀性如何 |
好 |
好 |
|
(4)代碼容易維護嗎 |
容易 |
容易 |
|
(5)代碼每一行都執行並檢查過了嗎 |
是 |
是 |
|
二、代碼 設計規範
|
(1)設計是否聽從設計模式 |
是 |
是 |
(2)有無硬編碼或字符串/數字等存在 |
無否 |
無 | |
(3)是否依賴某平臺影響移植 |
否 |
否 |
|
(4)開發者新添功能/類似功能是否能用已有來調試 |
是 |
是 |
|
(5)有無無用代碼可刪除 |
無 |
無 |
|
三、代碼 規範部分 |
符合代碼規範和風格嗎 |
是 |
符合 |
四、具體 代碼部分
|
(1)有無對錯誤進行處理,對於調用外部函數,是否檢查了返回值或處理了異常 |
是 |
是 |
(2)參數傳遞是否有錯誤,字符串長度是字節長度仍是字符,計數是0開始仍是1 |
否 從0 |
無 0開始 |
|
(3)邊界條件,switch分支,循環死循環 |
無 |
無 |
|
(4)有無斷言(Assert)來保證咱們認爲得不變條件獲得知足 |
無 |
有 |
|
(5)對於資源的申請釋放,有無泄漏,有無優化空間 |
有 |
有 |
|
(6)數據結構中有無用不到的元素 |
無 |
無 |
|
五、效能
|
(1)代碼效能如何,最壞狀況怎樣 |
好 |
好 |
(2)代碼(尤爲循環)有無可優化 |
有 |
有 |
|
(3)系統和網絡調用是否超時,如何處理 |
否 |
否 |
|
六、可讀性
|
代碼可讀性如何,有無足夠註釋 |
好 有 |
好,有註釋 |
七、可測試性
|
代碼是否須要更新或建立新的單元測試 |
是 |
否 |
3、結對編程(通過比較選取王祥月成員的項目爲基礎開始改進)
一、代碼編寫基本規範
(1)註釋規範
1.標註功能塊
2.解釋簡單命名的變量做用
(2)變量命名規範
多采用英文單詞
二、描述結對編程的感覺
1.張瑩感覺:做爲一名Java菜鳥,在王祥月大佬的幫助和鼓勵下完成了基本的程序編寫、修改和審覈不由激動地內牛滿面,同時意識到因爲自身知識儲備的不足,致使整個團隊進度速度變慢,所以急需完備本身。可是兩人合做確實在某些方面很大程度上提升了效率,汲取雙方意見出爐的代碼質量也獲得了提高。結對編程是一個相互學習、相互磨合的漸進過程,在度過了學習階段後,結對編程小組的開發質量、開發時間一般比兩人單獨開發有明顯的改善。
2.王祥月感覺:合做很是愉快,和隊友交流順暢,隊友做一名c語言大哥我的水平高。
在通過愉快的合做咱們使程序更加完善,學習瞭解到告終對編程複審流程和效果。收穫頗豐。
三、結對場景照片
4、結對項目編程
一、github的鏈接地址
二、設計說明(改進處)
1.代碼規範和設計規範的修改
(a)改進了部分變量名定義
(b)刪除了多餘數組
2.成項目增長的需求
(a)增長了數據異常處理問題,如在輸入題目生成範圍的數據時,輸入了「abc「等字符數據,程序將退出/默認忽視當前功能。
(b)增大算式生成數的範圍,改成long型。超出將退出。