軟工網路 16個人作業2
psp2.1
個人開發流程
預估耗費時間(分鐘)
實際耗費時間(分鐘)
planning
計畫30
55estimate
明確需求和其他相關因素,估計每個階段的時間成本
1000
1650
development
開發180
200analysis
需求分析 (包括學習新技術)
180190
design spec
生成設計文件
4040
design review
設計複審
4060
coding standard
**規範
1515
design
具體設計
3030
coding
具體編碼
60100
code review
**複審
3030
test
測試(自我測試,修改**,提交修改)
4060
reporting
報告60
60測試報告
3030
計算工作量
3030
事後總結,並提出過程改進計畫
2020
題目要求:
解題過程:
1、統計字元數
忽略漢字,空格、字母與數字的ascii碼值範圍在32-126,換行符ascii碼值為10,水平製表符ascii碼值為9。
利用inputstreamreader輸入流從檔案中讀取單個字元,定義乙個字元計數器。迴圈讀取單個字元,判斷該字元的ascii碼值範圍,滿足條件,計數器加1。返回結果。
2、統計有效行數
利用輸入流從檔案中讀取一行,判斷是否為有效行數,有無字串,滿足條件則行數計數器加1。
3、統計單詞數
利用輸入流從檔案中讀取一行字串,將其分割成單詞,存入表中。返回**的長度。
4、統計詞頻並輸出前十個單詞
建立集合map,逐個讀取單詞表中的單詞,判斷該詞是否已存入集合,有則將該單詞對應的value(即出現的次數)加1,沒有就將該單詞存入集合。將集合元素按照頻數排序,最後進行輸出結果。
**組織:將幾個功能封裝在幾個函式中,再進行呼叫。
1、統計字元數
將要統計的檔案的路徑做為引數傳入函式中,再按照解題思路中利用字元流逐個讀取字元進行判斷和統計。
設計函式num_of_char如下:
private static int num_of_char(string filename2)
}r.close();//關閉資源
} catch (ioexception e) ;
}} catch (filenotfoundexception e)
return c_num++;
}
2、統計有效行數
統計檔案的路徑作為傳入引數,利用bufferedreader讀取一行檔案內容,判斷是否為空,否則將計數器加一。
private static int num_of_line(string filename2) throws ioexception
r.close();
return l_num;
}
3、統計單詞數
利用list存放文字的所有有效單詞。統計檔案的路徑作為傳入引數,利用bufferedreader讀取一行檔案內容,利用正規表示式"\\s*[^0-9a-za-z]+"
分割過濾除字母和數字以外的字串。將所有字串轉為小寫。進一步判斷字串是否含有數字(設計函式isnumberic(string str)),有數字,若滿足以4個英文本母開頭,跟上字母數字符號的格式(利用正規表示式),就將其加入單詞表中;字串中沒有數字,例如:i,am,you等單詞,也加入到單詞表中。最後返回單詞表的長度,即為單詞總數。
//統計單詞數
private static int num_of_word(string filename) throws ioexception [a-za-z0-9]*")) }}
else//字串中沒有數字
} } rf.close();
w_num=lists.size();
return w_num;
}
判斷字串中是否有數字函式
public static boolean isnumberic(string str)
else }}
//將map集合進行排序並返回前10個單詞的字串陣列
public static string sortword()
else
}
return str;
}
5、寫出檔案
利用filewrite進行寫出操作。
//path:寫出檔案的路徑;content:寫出的內容
public static void writetofile(string path, string content) throws ioexception
對於各個功能模組分別提供一些測試樣例進行測試。其中功能可基本實現。但寫出檔案模組無法將結果完成寫出,每次都只能顯示乙個。
測試樣例有:
**覆蓋率:
利用jprofiler
答:
軟工網路15個人作業1
傑micc 傑micc 當初你是如何做出選擇網路工程專業的決定的?原本專業為食品系的,迫於就業壓力,然後選擇轉專業進入網路工程 你認為過去兩年中接觸到的課程是否符合你對網路工程專業的期待,為什麼?還行吧.兩年中,學校先是安排一些計算機基礎課程.然後慢慢接觸到專業知識.只是課程略顯枯燥,相信大部分也是...
軟工網路15個人閱讀作業2 提問題
第六章114頁 1.盡早並持續地交付有價值的軟體以滿足顧客需求 2.敏捷流程歡迎需求的變化,並利用這種變化來提高使用者的競爭優勢 12.時時總結如何提高團隊效率,並付諸行動 我認真閱讀了這12條原則,我有兩個問題 第乙個是原則二的後半句話,看不懂,為什麼說需求的變化會提高使用者的競爭優勢,使用者的競...
軟工網路15個人閱讀作業2 提問題
快速通讀教材 構建之法 並參照提問模板,提出5個問題。如何提出有價值的問題?請看這個文章 以及 在網際網路時代如何提問題。還有這些要點 在每個問題後面,請說明哪一章節的什麼內容引起了你的提問,提供一些上下文 列出一些事例或資料,支援你的提問。說說你提問題的原因,你說因為自己的假設和書中的不同而提問,...