fork倉庫地址 | 地址 |
---|---|
github地址 | git |
結對夥伴學號 | 201731062518 |
結對夥伴博客地址 | 夥伴博客 |
在明理樓的一個教室裏一塊兒對項目進行了分析。對項目進行分工,作了需求分析。一個項目開始於需求調研,所謂「千里之行,始於足下」、「好的開始是成功的一半」、作到事半功倍,有了好的需求分析,對於項目的順利開展很重要,尤爲是能夠避免後期開發過程出現紕漏。而後討論了要寫多少類,咱們一人負責一塊,我負責接口方面,夥伴則負責調用方面。已經把類名、方法那些定義好了,這樣整合起來代碼可以跑起來。
在接口的設計過程當中,我按照題目的要求設計了計算總字符個數、計算文本中總單詞數、計算文本總行數、計算文本中每一個單詞出現的次數、將結果寫入文件等方法,再最初的編碼時,遇到了一些瓶頸,也是網上找方法、查資料,才解決了的。在代碼複審的過程當中,我和夥伴發現了我本身有些方法寫的不是很好,邏輯上的處理有點瑕疵,而後一塊兒商討進行了改進。
而後參考了c#的代碼規範,就開始了代碼的編寫,最後把兩我的的整合起來,進行單元測試和結果測試,而後往GitHub上面迭代傳送。
結對以下圖:
html
PSP2.1 | personal software process stages | 預估耗時(分鐘) | 實際耗時(分鐘) |
---|---|---|---|
planning | 計劃 | 35 | 45 |
estimate | 估計這個任務須要的時間 | 65 | 60 |
development | 開發 | 50 | 60 |
analysis | 需求分析(包括學習新技術) | 15 | 15 |
design spec | 生成設計文檔 | 10 | 15 |
design review | 設計複審(和同事審覈設計文檔) | 10 | 10 |
coding standard | 代碼規範(爲目前的開發制定合適的規範) | 5 | 5 |
design | 具體設計 | 20 | 30 |
coding | 具體編碼 | 90 | 120 |
code review | 代碼複審 | 45 | 60 |
test | 測試(自我測試,修改代碼,提交修改) | 60 | 80 |
reporting | 報告) | 100 | 100 |
test report | 測試報告 | 45 | 50 |
size measurement | 計算工做量 | 20 | 20 |
postmortem&process improvement plan | 過後總結,並提出過程改進計劃 | 15 | 10 |
Loose Coupling(鬆耦合):鬆耦合的目標是最小化依賴。鬆耦合這個概念主要用來處理可伸縮性、靈活性和容錯這些需求。同時意味着更多的開發以及維護工做量。git
2.count去實現該接口,具體把方法實現出來
這裏設計好後,和隊友的整合起來。在本身桌面上建立兩個txt文件,3.txt是讀入文件,4.txt是寫入文件。
運行後結果以下圖:
github
代碼規範(參考)--規範的代碼
規範的代碼能夠提升開發效率。
養成代碼規範的習慣,有助於自身的成長。
規範的代碼能夠下降維護成本。
算法
單元測試以下:
發現出錯了,修改代碼中assert.areEqual方法中的參數,成功經過測試,也成功讀入測試的輸出目錄。
編程
性能測試
c#
假如在cmd裏面輸入非項目要求的命令,就會報錯。咱們這裏使用了數組限制了輸入的命令。
解決這裏異常,咱們可使用try 和catch塊提供得一種結構化的異常處理方案,try catch自己並不會影響系統的性能,在沒有發生異常的時候try catch是不會影響系統性能的。受影響的時候是發生異常的時候。數組
支持兩種導入單詞文本的方式:①導入單詞文本文件,②直接在界面上輸入單詞並提交
提供可供用戶交互的按鈕和,實現-i -m -n -o 這四個參數的功能,對於異常狀況須要給予用戶提示。
將結果直接輸出到界面上,並提供「導出」按鈕,將結果保存到用戶指定的位置。
結合博客要求增長的功能,這裏我和隊友對發佈的要求的理解「提供可供用戶交互的按鈕和,實現-i -m -n -o 這四個參數的功能」應該就是設計一個能夠供用戶與系統交互的界面,也就是實現咱們以前設計的cmd讀入-i -m -n -o命令的效果。設計效果以及最終測試以下:
首界面:
導入文件:
結果以下:
post
在本地上往本身Github倉庫先傳入文件,提交了三次。
再簽入老師GitHub。
性能