OO第二次博客总结

第五次做业:数组

  度量图:安全

  

  类图:多线程

  

  分析:此次做业的主要问题是对电梯请求如何分配给三部电梯,让他们可以同时工做且不出现问题。这其中涉及到了关于线程安全,数据同步的问题。学习

    但因为这是多线程的第一次做业,本身之前对多线程没有一点概念,作这次做业以前查阅了不少资料,但仍是有不少地方并无真正弄明白。这在这次做业中体现的很明显。从度量图看,个人程序圈复杂度太大,说明程序代码质量低且不易维护,其次块嵌套深度太高,以及参数过多,这都是直接能够看出来的问题,而后个人类图也很杂乱无章,没有设计好。整体来讲,本身没有把握好时间,搞清楚多线程花了好久,设计程序时间不足,致使这彻底就是一个赶时间的程序。测试

  本身的bug:此次因为没设计好,功能性测试几乎都错了,只过了几个简单的例子。线程

  测试任务:可能他也没有好好设计吧,只要输入回车,程序就crash,他是由于输出时用了很奇怪的方式,我帮他改了下,结果和我差很少,功能性测试几乎不对。设计

 

第六次做业:对象

  度量图:blog

  类图:同步

分析:

  此次做业是设计一个文件监控系统,首先对监控做业进行处理,忽略掉非法监控,将合法监控提取出来。至于对文件如何监控,个人办法是为所监控的对象创建快照,将其属性保存下来,而后再等一个扫描周期(个人是50ms)将新的快照与旧的进行对比,发现其改变的属性,就能够看是否相应的触发器,执行相应的任务。

  但我这样作好像有问题,就是在path-changed的时候,它不响应,我单步运行发现其新的快照集和旧的变得同样了,也就是50ms这个周期没有捕捉到这个变化,因此我把时间改成60ms就能够了。总的来讲,此次比上次好,至少弄清楚了多线程的基本思想,也学会了正确进行加锁同步。

本身的bug:path-changed监控出错,应该是周期的问题。

测试任务的bug:他的程序不能实现文件安全类功能不完整,不少功能没有实现,测试起来较为困难,他在多线程安全处理也不行,有的变化不予响应,且summary与detail会重复记录。

第七次做业:

  度量图:

  类图:

分析:此次是设计一个出租车调度系统,个人实现思想是,先完成地图导入及出租车初始化的工做。出租车初始化主要就是开一百个线程,让出租车随机运行。而后获取乘客请求进行处理,这部分就按照指导书的要求,挑选符合要求的出租车,进行派单,记录其运行信息。

此次做业相比前两次完成的要好,多是本身对多线程有了更进一步的理解,也是一点点在进步吧。

本身的bug:因为粗心,没有仔细检查,有个地方数组越界,crash了。

测试任务的bug:他的程序没有把路径记录完,只记录了一部分请求记录,并且对同质请求处理不当。

 

总结:总的来讲,本身从不会多线程到慢慢入门,一点点在进步,仍是蛮开心的,不只是做业,周五的OO上机我也学到了不少。反正对待一个学习任务,慢慢去学,不放弃,总会弄清楚的。

相关文章
相关标签/搜索