合作者學號:201631062205 201631062213
gitee網址:https://gitee.com/xiecangxing/wc/tree/ce1fe8f0c99de1957472a75a7d129123592d1f15
1.代碼互審情況:在代碼互審的過程中我發現我的小伙伴沒有做命令符的保護,運行的時候有報錯。還有就是因為題目中的需求寫的很概括,我們倆實現的功能就有所不同。然后我們整合了兩個人的代碼,基本實現了多批量處理目錄以及子目錄下所有的符合條件的文件,輸出他們的代碼行/空行/注釋行信息,以及單詞的剔除。
2.模塊分工:在這次編程過程中,我負責了遍歷所有的符合條件的文件功能,還有剔除單詞提取功能,小伙伴負責的是代碼主要功能的實現,即,代碼行,注釋行,空行的功能實現,以及單元測試。
3.在上次作業的基礎上,我們增加了以下幾個方法:
FindAllFiles(string path,string searchstr) //遍歷目錄和子目錄下所有符合條件的待處理文件
public void EmptyLine(string filePath) //文件中的空行數
public void CodeLine(string filePath) //文件中的代碼行數
public void NoteLine(string filePath) //文件中的注釋行數
public void ExceptWords(string filepath) //提取禁止搜索的單詞
在整合代碼后,我的搭檔先進行了單元測試,截圖如下:
然后由我進行遍歷所有的符合條件的文件功能:
輸入以下命令行wc.exe -s -a -w -c -l *.cs -o output.txt -e stopList.txt
遍歷同目錄以及子目錄下所有的.cs文件,統計代碼行/空行/注釋行,單詞數,字符數,總行數,並且剔除stoplist。txt中的單詞stopList.txt中提出單詞為:
最后輸出結果:
我的總結:在這次的結對編程中,我的搭檔幫助了我很多。在代碼互審階段,我發現我實現的功能並沒有達到老師的要求,看了搭檔的代碼發現了自己思維的局限,在搭檔的幫助下我基本實現了作業的要求功能。還有就是結對編程中命名規范很重要,規范的命名可以幫助我們在互審和整合代碼階段節省很多時間和避免一些bug。這樣編程的效率就會大大提高。我覺得結對編程是一個非常好的互相學習的機會,可以學習搭檔編程中的優點,發現並改正自己的缺點,兩個人可以互幫互助,共同進步。