• oo第四单元总结


    一.总结本单元两次作业的架构设计

     本单元的两次作业,因为临近期末,总体的课程任务比较紧张,其次是,尽力去理解StarUML文件的信息后,仍然没有很明白,所以两次作业均未及时完成。

    二.总结自己在四个单元中架构设计及OO方法理解的演进

    第一单元:

     对于第一单元递进式的三次求导作业,在架构设计方面,学习了如何去层次化架构,以及如何按照数据/行为建立抽象层次;在OO方法理解方面,着重认识了何为面向对象程序,以及三个关键类——输入处理,主控,核心数据管理——应该如何去识别。总结而言,第一单元介绍了如何解决,面向对象作为一种思维方法所带来的三个基本问题:如何管理对象,如何建立对象之间的层次关系,如何管理层次关系。

    第二单元:

     第二单元的多线程电梯作业,对于架构设计方面,在写作业时,主要遇见了两个问题:一个是程序的可延展性问题;一个是数据的共享和并发访问的问题。因此,在解决多线程问题的考虑中,要清楚数据的来龙去脉和可能发生的情况。对于OO方法理解方面,了解学习了生产者消费者的多线程交互模式。

    第三单元:

     第三单元,引入了JML规格,并要求写出符合规格的代码,在架构设计方面,首先是读懂规格,其次是考虑采用什么数据结构和方法去实现;因为作业的测试中,重视CPU运行时间,所以在架构设计方面,还需要考虑采用何种算法更高效。在OO方法的理解方面,学习了如何去根据已有的规格设计,去实现目标程序,以及在团队合作中,一个良好的规格设计,是确保各部分程序能有效交互的基础。

    第四单元:

     第四单元,引入了UML,一种在需求分析,设计等方面广泛运用的建模语言。

    三.总结自己在四个单元中测试理解与实践的演进

    第一单元:

     因为本单元主要是学习如何运用层次化结构,因此在测试方面,构造了边界测试,以及检查每个层次实现的功能是否完整正确。

    第二单元:

     因为本单元是多线程,所以程序结果可能难以复现,因此在测试方面,主要是人工构造特殊样例,并重复测试。

    第三单元:

     本单元学习了如何使用junit进行单元测试,使得测试的覆盖性更广泛且合理。

    第四单元:

     由于本单元没有做出成果,因此没有演进。

    四.总结自己的课程收获

     首先是比较深刻地体会了什么叫面向对象,即知道了对象是一组具体的个体,各自维护自己的状态,而面向,则是把对象作为基本单位来规划设计程序的行为。其次是对多线程有了一个比较全面的认识,对于数据的保护和安全也有了学习和了解。然后是,对如何设计规格和如何实现规格,也有了基本的理解。比较遗憾的是,对于最后一单元的UML,仍然存在很多疑惑。

    五.立足于自己的体会给课程提三个具体改进建议

     (1)实验课和理论课离得太近,存在着知识还没有完全掌握,便需要使用的问题,建议可以在理论课上,讲解一部分实验课的具体内容。
     (2)希望指导书中增加一些不同的测试样例,避免对指导书中的一些内容存在误解或者费解。
     (3)希望实验课课后可以提供参考答案,便于反思改进该次实验作业。

  • 相关阅读:
    如何得到运行程序的路径,以及如何得到路径的文件夹,文件名,以及类型等等信息
    STL的心得(4)运用(MFC)
    STL的心得(3)---运用(控制台)
    【Css】清除浮动,独占一行
    [Html]加链接提示
    【JS】清除子节点
    【CSS】使Div在父元素中水平居中
    [JS]回前页
    【JS】鼠标移动到链接上变手型
    【jQuery】改变控件的使能状态
  • 原文地址:https://www.cnblogs.com/wzqyekong/p/11070380.html
Copyright © 2020-2023  润新知