1、博文簡要信息表html
項目 | 內容 |
這個做業屬於哪一個課程 | http://www.cnblogs.com/nwnu-daizh/ |
這個做業的要求在哪裏 | http://www.javashuo.com/article/p-bjcswxqf-ma.html |
課程學習目標 | 熟悉軟件開發總體流程,提高自身能力。 |
本次做業在哪一個具體方面幫助咱們實現目標 | 第一次體驗一個完整的工程 |
2、任務一java
點評做業博文地址 | http://www.javashuo.com/article/p-aifxqwsv-ht.html |
博文結構 | 博文排版清晰,能一目瞭然看到老師的要求。 |
博文內容 | 博客內容實驗要求功能表示有所欠缺,沒有看到psp、流程圖等結構性東西。 |
博文結構與PSP中「任務內容」列的關係 | 博客中爲附PSP,沒法評價。 |
點評內容 | 評價博客排版以及博客內容是否充實,以及github中代碼的運行和測試,經過測試發現代碼功能不全,對老師所要求的功能只是走馬觀花地提了一下,對同窗的代碼進行了改進而且踢了一些可供參考的建議。 |
點評心得 | 在閱讀完你的博客後發現你的博客仍是有不少須要改進的地方,但願能認真對待每次做業。但願在之後可以自覺接受一些新事物,學會Markdown的一些附加功能,這樣就會使你的博文更加完美了 |
3、任務二
一、具體說明
結對項目源碼在Github的倉庫主頁連接地址: https://github.com/jinshengfang123/jiedui|
需求分析 :
(1)實驗2要求的功能;
(2)單詞頻數可視化柱狀圖;
(3)統計該文本行數及字符數;
(4)各類統計功能均提供計時功能,顯示程序統計所消耗時間(單位:ms);
(5)可處理任意用戶導入的任意英文文本;
(6)人機交互界面要求GUI界面(WEB頁面、APP頁面均可)|
軟件設計說明 :
本次項目主要目的是實現可導入任意英文文本文件,統計該英文文件中單詞數和各單詞出現的 頻
率(次數),並能將單詞按字典順序輸出;將單詞及頻率寫入文件;實現GUI界面;將單詞及頻
率寫入指定位置
二、核心功能代碼展現
ackage fangfa.a;
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.util.TreeMap;git
public class jsf {
// 統計數字或者字符出現的次數
public static TreeMap<Character, Integer> Pross(String str) {
char[] charArray = str.toCharArray();github
TreeMap<Character, Integer> tm = new TreeMap<Character, Integer>(); for (int x = 0; x < charArray.length; x++) { if (!tm.containsKey(charArray[x])) { tm.put(charArray[x], 1); } else { int count = tm.get(charArray[x]) + 1; tm.put(charArray[x], count); } } return tm; } public static void main(String[] args) { BufferedReader br = null; int line = 0; String str = ""; StringBuffer sb = new StringBuffer(); try { br = new BufferedReader(new FileReader("c:\\1.txt")); while ((str = br.readLine()) != null) { sb.append(str); ++line; } System.out.println("\n文件行數: " + line); System.out.println("\n文件內容: " + sb.toString()); TreeMap<Character, Integer> tm = Pross(sb.toString()); System.out.println("\n字符統計結果爲:" + tm); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } finally { if (br != null) { try { br.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } }
}
package a.a;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
import java.io.LineNumberReader;編程
public class hangshu
{
public static void main(String[] args)
{
try{
File file =new File("src/word.txt");
if(file.exists()){
FileReader fr = new FileReader(file);
LineNumberReader lnr = new LineNumberReader(fr);
int linenumber = 0;
while (lnr.readLine() != null){
linenumber++;
}
System.out.println("此文本的行數爲: " + linenumber);
lnr.close();
}else{
System.out.println("File does not exists!");
}
}catch(IOException e){
e.printStackTrace();
}
}
}
三、程序運行:程序運行時每一個功能界面截圖
a、統計文本單詞數
b、統計單詞數
c、統計文本行數
d、統計單詞出現最高頻率及GUI界面
e、輸出到文件result.txt中
f、結對編程圖片
4、提供這次做業的pspapp
psp2.1 | 任務內容 | 計劃總共須要完成的時間(min) | 實際完成須要的時間(min) |
Planning | 計劃 | 10 | 20 |
Estimate | 估計須要時間 | 並計劃大體工做步驟 | 10 |
Development | 開發 | 200 | 240 |
Analysis | 需求分析 | 10 | 15 |
Design | Spec 生成設計文檔 | 30 | 25 |
Design Review | 設計複審 | 10 | 8 |
Coding Standard | 代碼規範 | 20 | 25 |
Design | 具體設計 | 20 | 30 |
Coding | 具體編碼 | 360 | 420 |
Code Review | 代碼複審 | 30 | 40 |
Test | 測試 | 15 | 20 |
Reporting | 報告 | 8 | 10 |
Text Report | 測試報告 | 5 | 8 |
Size Measurement | 計算報告量 | 5 | 5 |
Postmortem&Process Improvement plan | 總結並提出改進計劃 | 15 | 20 |
5、實驗心得
經過本次結對項目實驗深入體會到思想交換的重要性,之前咱們全部的實驗基本上都是一我的完成,因此每次實驗作到中途就會自動中止,而後以不懂的心態敷衍塞責。此次經過兩我的的交流,能更多地實現老師所要求的功能。可是因爲咱們基礎有限,在完成某些功能代碼時仍是存在很大的困難,在接下來的學習中咱們應該可以藉助某些平臺自主學習編程設計。也但願老師在實驗課上可以給每次試驗所需用的代碼對咱們適當地進行分析與講解,這樣咱們完成做業的質量就會更加高效,學習到的東西也更多。學習