软件工程--四则运算表达式(8)

四则运算题目生成器

本章主要进行代码的性能测试和代码审查,查看代码性能和格式是否符合项目要求

性能测试部分

性能测试部分对每一个函数的运行时间和调用过程进行了时间上的记录,可以清楚的看到哪一个部分的时间开销大,进而推测是否符合性能需求的需要

性能测试工具

性能测试使用pycharm自带的性能分析器进行

测试结果

对main函数进行测试,测试每一个函数的详细运行时间和函数的调用图,测试的结果如下:

函数调用和时间分析信息

可以看到测试结果中TestPer函数最费时间,这是很容易理解的,因为TestPer是主函数,其次是Generate模块,而在generate中最费时间的是deepcopy部分,因为deepcopy要深拷贝一个完整的root序列下来,所以时间的开销比较大,其次就是randinit函数比较耗时,randinti中调用了随机数生成器,随机数生成是需要时间的,所以导致函数的整体时间开销偏高,下一步的改进可以用cython中的深拷贝模块替换掉使用的python deepcopy模块,可以进一步降低时间开销

代码审查部分

代码审查是确保代码质量的关键一环,这部分是由我的队友完成的

代码审查工具

代码审查使用python的Pylint进行,经过了与编码过程同步进行的改进工作,代码的质量与之前相比已经有了长足进步

以部分代码举例

OriginRequest部分
改进前的分数

改进前的分数

改进后的分数

改进后的分数

solve部分
改进前的分数

改进前

改进后的分数

改进后

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值