我这个项目的码云地址是https://gitee.com/chitu_heshui/personal_project41678.git
表格记录了我预期做这个项目的时间和实际上消耗的时间
PSP2.1
Personal Software ProcessStages
预估耗时(分钟)
实际耗时(分钟)
Planning
计划
440
410
Estimate
估计这个任务需要多少时间
440
410
Development
开发
200
180
Analiysis
需求分析(包括学习新技术)
30
20
Design Spec
生成设计文档
20
15
Design Review
设计复审
Coding Standard
代码规范(为目前的开发制定合适的规范)
20
15
Design
具体设计
20
20
Coding
具体编码
60
70
Test
测试(自我测试,修改代码,提交修改)
30
30
Reporting
报告
Test Repor
测试报告
Size Measurement
计算工作量
Postmortem & Process Improvement Plan
事后总结,并提出过程改进计划
60
60
合计
440
410
计算器的流程图
写这个计算器的时候遇到了正则表达式来判断输入的值,这是上学期在数据结构学到的但是忘了,所以就在百度上找了一些博客来学习,
还有就是加减乘除出运算时处理的函数也是在百度上找的,自己研究了好久,挺好玩的,
这是从命令提示行获取代码:
parser=argparse.ArgumentParser(description='Process some inteqers.')
parser.add_argument("one",type=str)
args=parser.parse_args()
String = args.one
这是运算的部分代码:
def getValue(exp):
def value(exp, i):
deque = []
pre = 0
while i < len(exp) and exp[i] != ')':
if ord(exp[i]) >= ord('0') and ord(exp[i]) <= ord('9'):
pre = pre * 10 + int(exp[i])
i += 1
elif exp[i] != '(':
addNum(deque, pre)
deque.append(exp[i])
i += 1
pre = 0
else:
bra = value(exp, i + 1)
pre = bra[0]
i = bra[1] + 1
addNum(deque, pre)
return [getNum(deque), i]
这是正则判断的代码:
jisuan=re.compile("^(\(*\d+(.\d+)*\)*(\+|-|/|\*))+\d+(.\d+)*\)*$")
程序会获取从命令行输入的字符串并将其从命令行窗口显示出来
我遇到了一个问题就是test测试的时候定义方法名字的时候必须要以test_开头,否则就不会测试,测试用例,这个坑我踩了好久
总结:通过大伟老师安排我软件工程这门课,深深体会到有些东西必须得经历的,就是(趟坑)坑踩多了就好了,这是一个过程,使得我们如何快速的解决问题,要养成良好的编程习惯。