20172323 2017-2018-2 《程序设计与数据结构》实验2报告

课程:《程序设计与数据结构》
班级: 1723
姓名: 王禹涵
学号:20172323
实验教师:王志强
实验日期:2018年4月22日
必修/选修: 必修

实验内容

  1. 初步掌握单元测试和TDD

  2. 理解并掌握面向对象三要素:封装、继承、多态

  3. 初步掌握UML建模

  4. 熟悉S.O.L.I.D原则

  5. 了解设计模式

  6. 完成蓝墨云上 (1)-(5)实验。

实验过程及结果

实验1

  • 要求完成单元测试的学习,并使用JUnit测试用例(正常情况,错误情况,边界情况)
  • 实验结果如图:

实验2

  • 以 TDD的方式研究学习StringBuffer,并学会自己写JUnit测试用例
  • 实验结果如图:

实验3

  • 对设计模式示例进行扩充,体会OCP原则和DIP原则的应用,初步理解设计模式
  • 实验结果如图:

实验4

  • 以TDD的方式开发一个复数类Complex
  • 本实验在提交截图时出现了差错,现在重新提交
  • 实验结果如图:

实验5

  • 使用StarUML对实验中的代码进行建模
  • 实验结果如图:

实验过程中遇到的问题和解决过程

问题1:关于S.O.L.I.D原则不是特别能理解
问题1解决方案:

- SRP(Single Responsibility Principle,单一职责原则) - OCP(Open-Closed Principle,开放-封闭原则) - LSP(Liskov Substitusion Principle,Liskov替换原则) - ISP(Interface Segregation Principle,接口分离原则) - DIP(Dependency Inversion Principle,依赖倒置原则)
通过[此篇博客](https://blog.csdn.net/e5max/article/details/8872182),大致对概念有了一些感性的认识。 - SRP:指一个类只完成它该完成的职责, - OCP:对扩展是开放的,而对修改是封闭的。 - LSP:只有在确定是 is-a 的关系时才能使用继承 - ISP:一个接口或者类应该拥有尽可能少的行为 - DIP:这个没有get到点

其他(感悟、思考等)

这次的实验主要还是跟着教程一步一步地做,其实也并没有想象中那么难做,依葫芦画瓢的过程中也没遇到什么太大的问题,但是这次的实验其实能学到很多东西。

参考资料

posted @ 2018-04-24 23:35  二许  阅读(202)  评论(3编辑  收藏  举报