自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(5)
  • 收藏
  • 关注

原创 OO第四单元总结

特别要避免的就是在一开始对于问题的把握还没有能达到提纲挈领的程度时,用深度优先的方式进行编程实现,也就是说一开始就扎到某一个类中开始实现它所有的属性和方法,这样很大概率会导致在实现其他类的时候会发现原先的很多东西都需要调整,使得原来的很多功夫都白费了。所以结合我的具体实践经验,我认为,真正容易实现的是先进行一个问题的抽象,根据面向对象设计与构造的思维,以类为编程单位,确定这个问题里面包含有哪些类,每个类里面的属性大致有哪些,根据问题这个类需要完成的主要功能是什么。所有类均对应uml中的类。

2024-06-15 10:39:03 428

原创 OO第三单元小结

对于这种问题,通过规格就可以很好的解决。而对于小部分的关键软件而言,除了黑盒测试,还需要进行白盒测试,不仅要保证基本功能的正确性,更要从代码层次来检测是否有隐藏的错误,也就是说代码的实现是否是真正正确的而不只是功能的正确性。对于一般的黑盒测试来讲,大部分数据构造可以采用自动化的方式来完成,通过合理地设置数据的范围,基本可以覆盖大部分的情况。本单元的Junit测试和先导课的Junit测试的很大的区别在于,由于有了规格明确的限定,使得Junit的测试的边界条件非常清晰,同时有效的覆盖程度可以大大提升。

2024-05-17 22:02:09 528

原创 OO第二单元小结

电梯本身使用look策略,符合实际电梯的运行情况,在开关门的处理上采用了关门的最后一刻人在进的方式,也是最大化了可捎带的乘客人数,提高了性能。方法的调用对象应该是共享对象,而不是线程对象,效果是将调用该方法的线程加入关于该对象的等待队列中,同时释放该线程已经持有的该对象的锁。我的实现方式是创建一个共享对象,作为双轿厢电梯的一个属性。而死锁主要是在后面的作业中出现,主要是电梯在休眠后无法被唤醒的问题,最后是根据电梯的状态逻辑重新确定了电梯等待和唤醒的逻辑,补充了之前电梯被唤醒的条件,解决了这个问题。

2024-04-20 18:50:32 1001

原创 OO第一单元小结

根据对于表达式的文法,对待化简的表达式建模。表达式由项组成,项由因子组成,因子分为变量,常数,指数函数,表达式因子,求导因子,自定义函数因子。展开后的表达式最后的表达式展开为一个每一项都为 A*x*exp^() 的标准形式。总体架构还是比较清晰的,根据表达式的具体组成划分了相应的类,架构的层次化和问题的层次化基本一致。因子类根据其行为的共性toString()和toStdExpr()提炼出接口Factor,所有因子都实现了接口,实现了各因子引用和函数调用的统一。在存储函数定义的部分单独设置了一个类,并使用了

2024-03-22 17:19:10 770 1

原创 OOpre课程总结

注]: Juit不同测试之间的独立需要注意静态的data member, 由于静态成员在类加载时就会且仅仅进行一次初始化,故如果在对于同一个类中的不同方法进行测试时如果没有在测试前对于这些静态成员的初始化可能会导致上一个测试的数据没有清除仍然留存在其中。造成代码逻辑错误的假象。可以将junit的要求进一步的灵活,针对不同的作业内容给予不同的要求。每次作业给予一定的结构设计的指导,或者是在本次作业结束后给予大体结构的示例,这样可以更好并及时优化代码的结构,避免后面再做开发时需要大规模的改变之前的结构。

2023-11-10 18:10:24 31

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除