雪绕风飞

导航

 

前言:这次作业对于一个没有任何基础的我来说,我用到什么学什么,我之前和王超学姐谈过,我一点基础都没有,我该怎么办,学姐告诉我,就从项目入手,用到什么学什么,用项目来驱动自制力差的我来学习。我很重视这次作业,我尽力去实现那些功能,但是还有一些没有做出来,一些参数的限制,我还没学会,我会把这个项目做完的,希望老师同学们监督。我现在把我这几天做的发表出来吧,之后的我一定会补上。

一、项目

源代码地址:https://github.com/cy0325/Problem-software.git

结对成员: 张洪宇2016012092

                     谢月月2016012075

二、PSP展示

PSP

任务内容

计划时间(min)

Planning

计划

60

 Estimate

 估计这个任务需要多少时间,并规划大致工作步骤

45

Development

开发

1500

Test

测试

120

Algorithm Optimization

算法优化

180

Interface Design

接口设计

150

Coding Standard

代码规范

300

Design

具体设计

120

Coding

具体编码

450

Code Review

代码复审

90

Test

测试

60

Reporting

报告

180

Test Report

测试报告

120

Size Measurement

计算工作量

30

Postmortem & Process Improvement Plan

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

120

 

三、 相关概念

1)关于Information Hiding:信息隐藏

对于面向对象的程序设计而言,信息隐藏是一种重要的软件开发手段,它与对象的封装与模块化相关。信息隐藏是开发整体程序结构时使用的法则,将每个程序的隐蔽或封装在一个单一的设计模块中,定义每一个模块时尽可能少地显露其内部的处理。把信息隐蔽用作模块化系统的一个设计标准,在后面项目调试过程中,编程人员的任务量能够得以减轻,提高代码可读性。

2)Interface Design:接口设计

设计接口的时候,我们也有讨论接口该如何设计会更加合理。接口在设计的时候应当尽量的详细划分,使得每一个接口中方法应该尽量少,将功能实现在接口中,所以我们决定讲生成题目与计算功能分开,分成两个接口。在层与层之间调用接口,类之间通过接口访问。

3)Loose Coupling:降低耦合

模块与模块之间总会存在一些“联系”,这就会提升我们维护过程中的复杂度和任务量。松耦合通过接口的方式实现各个模块之间的调用,可以使模块在发生改变时,其他的部分可以保持不变,减少模块间的相互“联系”,降低耦合。

四、计算模块接口的设计与实现过程

        (1)实体类:一个产生随机数,两个产生计算符(计算符写两个,有乘除和没有)。传入最小值最大值。

  (2)拼接类:将随机数和计算符进行拼接,循环产生很多道题。传入题目数量。传入接口的o运算符个数参数。

  (3)括号类,给出的题加括号,给接口调用。

  (4)IO类,用来输出到result.txt。

  (5)总体类与接口:把各个类进行调用与完成他们的方法。传入是否乘除,是否括号来看调用哪些类的方法。

五、计算模块接口部分的性能改进

 

六、计算模块部分单元测试 我们用的是网页端来展示界面模块,所以主要是面模块设计。

 

九、界面模块与计算模块的对接

 

十、描述结对的过程

 本次作业,我们两个虽然会的不多,但是也确实努力去学习了,我们也有明确分工,我做前台,我的伙伴做后台,虽然测试那部分还没有做完,但是我们一定会补上的,我想大家都不会拒绝一个努力的人,越努力越幸运,我们也通过这次努力明白了代码规范的重要性,她是女生寝室,我是男生寝室,我的代码就是比较乱,她看了无从下手。以后会注意这个的。我们今天拍了照片,在她的手机里,但是由于她的手机丢了,我们之后这个也会补上。希望老师体谅。

结对编程优点: 1.结对编程就是两个程序员互相审查的过程,在编程过程中能够尽早发现问题并解决问题,提高了编程效率。

                             2.编程过程中遇到困难,两个人相互鼓励,极大的提高了编程的信心。

                             3.两个人在编程过程中不断磨合,相互学习,使双方的代码能力得到了一定程度上的增强,同时也有了合作意识。

张洪宇优点:自学能力较强,积极

           缺点:自制力太差,

谢月月优点:耐心,勤奋

          缺点:不太自信

 

PSP

任务内容

实际时间(min)

Planning

计划

75

 Estimate

 估计这个任务需要多少时间,并规划大致工作步骤

45

Development

开发

未完

Test

测试

未完

Algorithm Optimization

算法优化

未完

Interface Design

接口设计

180

Coding Standard

代码规范

270

Design

具体设计

120

Coding

具体编码

未完

Code Review

代码复审

未完

Test

测试

未完

Reporting

报告

未完

Test Report

测试报告

120

Size Measurement

计算工作量

30

Postmortem & Process Improvement Plan

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

120

 

 

 我们这个作业还没有做完,之后我还会补发一篇博客,完整版的描述这次作业。

 

posted on 2018-04-10 02:40  雪绕风飞  阅读(182)  评论(2编辑  收藏  举报