WC个人项目(Java)

1.GitHub项目地址

https://github.com/SIGH2333/Homework1


2.PSP表格

PSP2.1Personal Software Process Stages预估耗时(min)实际耗时(min)
Planning计划3055
Estimate估计耗时3030
Development开发600720
Analysis需求分析5060
Design Spec生成设计文档3043
Design Review设计复审2020
Coding Standard代码规范2020
Design具体设计15050
Coding具体编码400300
Code Review代码复审6050
Test测试180180
Reporting报告120120
Test Report测试报告6060
Size Measurement计算工作量2020

Postmortem&Process

Improvement Plan

事后总结,提出过程改进计划3040

合计

   

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3.解题思路

我认为解题的关键是在于在脑海里模拟出WC应该具备的功能以及交互性。

确认其基础功能(字符计算):外界只需要确定查询的文件,读入便可进行计算。

拓展功能(对基础功能的深化,在正则表达式上进行设计):加深判定规则

以及高级功能(图形界面的设计运用):进行界面展示,并调用此前设计好的参数。

再者就是对错误情况的判断与提示。

4.设计实现过程

在分析中可以判断出,后面的高级功能是对前面基础功能与拓展功能的复用,故设计成三个类

1.MainOp类:程序的入口处,指引用户进行输入,并通过指令调用其他类进行响应。

2.function类:程序的核心算数逻辑,将一个个功能都设计成方法以便调用。

3.GuiX类:高级功能的图形界面以及图形界面的响应,文件选择器都在这一类

 

 

 

5.程序结果

1.基础功能

 

 

2.拓展功能

 

 

3.高级功能

 

 

 

 

4.异常情况

 

 

5.测试文件

 

 

6.总结

从这次的大作业中深刻的感受到前期对于程序逻辑结构的设计非常重要,直接决定了后面方法调用的复用性以及可拓展性。

只有一个良好的设计才能保证程序能好好维护并且迅速找出错误,同时我们编程者也可以对整个程序的结构了然于心。

与此同时也发现了自身的不足之处,对于功能的实现,在算法的设计上还是显得基本功不扎实,需要自身多加牢固!

转载于:https://www.cnblogs.com/sigh2333/p/11588654.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值