第四周软件项目管理作业
1.Fantacy小组站立会议
周五上课之后3:00到3:30,我们4位开了站立会议,主要内容:
首先询问前一周大家所学和所做的内容,之后确定各位本周的任务,准备alpha版本的发布。
杨若鹏:词频统计核心代码实现与下载模块实现
郭又铭:上传模块实现
何美琪:参考java书籍,练习编写代码
藏润强:学习了java的内容,参与了词频统计算法的编写
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;
public class WordFreqStatistics {
public static String sourceFilePath = "X:/Workspaces/a.txt";
public static Map<String, Integer> mp = new HashMap<String, Integer>();
public static Set<String> stop = new HashSet<String>();
public static String words[] = null;
public static String sourceContent = null;
public static String getSourceContent(String filepath) {
return FileUtils.readFile(filepath);
}
public static String[] pretreatmentContent(String content) {
content = content.toLowerCase();
content = content.replaceAll("[^A-Za-z]", " ");
content = content.replaceAll("\\s+", " ");
return content.split("\\s+");
}
public static void getFreq(String[] words) {
for (int i = 0; i < words.length; i++) {
if (!stop.contains(words[i])) {
if ((mp.get(words[i])) != null) {
int value = mp.get(words[i]).intValue();
value++;
mp.put(words[i], new Integer(value));
} else {
mp.put(words[i], new Integer(1));
}
}
}
}
public static List<Map.Entry<String, Integer>> sort() {
ArrayList<Entry<String, Integer>> lst = new ArrayList<Entry<String, Integer>>(
mp.entrySet());
Collections.sort(lst, new Comparator<Object>() {
@SuppressWarnings("unchecked")
public int compare(Object e1, Object e2) {
int v1 = Integer.parseInt(((Entry<String, Integer>) e1)
.getValue().toString());
int v2 = Integer.parseInt(((Entry<String, Integer>) e2)
.getValue().toString());
return v2 - v1;
}
});
return lst;
}
public static void main(String[] args) {
sourceContent = getSourceContent(sourceFilePath);
words = pretreatmentContent(sourceContent);
getFreq(words);
FileUtils.writeFile(sort());
}
}
2.结对编程
这次和我的新队友何美琪进行编程,周二在图书馆讨论了一番,准备实现四则运算,希望可以交互式地使用或者批处理多个运算,与正常的计算器输入方式相同:先输入第一个项,其后接着一个运算符,再接着第二个项,然后把运算结果转为下一个运算的第一个项。
3.燃尽图
4.psp
第四周 | 工作内容 | 类型 | 日期 | 耗时 |
546字 84行左右 代码 |
站立会议 | 讨论 | 3.25 | 30分钟 | ||
构建之法 | 看书 | 3.26 | 30分钟 | ||
java语言程序设计+eclipse | 编码 | 3.28 | 4个小时 | ||
构建之法 | 看书 | 3.30 | 1小时 |
github地址:https://github.com/zangrunqiang/cptj.git