oo第四次博客作业

一.两次作业

UML语言介绍:统一建模语言(英语:Unified Modeling Language,缩写 UML)是非专利的第三代建模和规约语言。UML是一种开放的方法,用于说明、可视化、构建和编写一个正在开发的、面向对象的、软件密集系统的制品的开放方法。在uml中不用关注细节而只要关注对象的属性,操作,状态,时态等就可以了。

第一次作业:我将输入进行了树状存储,首先要将元素分类,第一层:类和接口,第二层,属性操作参数等。还有一类为类间关系,继承关联等,这类用数组单门存储。这样结构很清楚了,写起来也比较容易。

第二次作业:增加了三个需求:输入检查、状态图查询、顺序图查询,其中输入检查是对类图进行输入检查,主要是检查类图的模型有效性,状态图和顺序图则是新的UML图。可惜,并未完成,原因在于没有把题意搞清楚。

二.四个单元及oo方法理解

第一单元:第一单元作业是关于多项式求导,依次为幂函数求导,三角函数求导,复合函数求导。第一次作业是第一次接触并没有想太多,只写了一个类,过程也十分简单,就是合并同类项之后输出时,系数为指数,指数为指数减一,并没有想过后续的作业,只想着能解决问题就好。第二次作业时发现,第一次作业完全没用了,只能重写,但我仍不死心,第二次作业的元素有x,sin,cos三个,所以我就自己推导了一个a*x^b*sin^c*cos^d的一个公式,照着这个写,倒是也写出来了(原谅我的无知);第三次作业发现,第二次作业也不能用,这才死心,这时候的架构是将因子,项,表达式各写了一个类,不过出现了循环嵌套的情况,我又单门写了一个类来解决这个问题。

第二单元:第二单元作业是多线程电梯,没想到的是第一次作业就是多线程,第一次作业虽然简单,但是我对多线程理解还费了不少时间,明白原理之后就轻松多了。第二次作业,是捎带电梯,如果没有限定运行时间的话,利用轮询其实难度骤减,可惜。只好换了种思路,用一个数组存储电梯要停的楼层,我叫运行队列,剩余的存到我叫等待队列,也就是说当有输入时判断是否进入运行队列否则进入等待队列,这样大大减少了时间复杂度。第三次作业,为多电梯捎带,难点在于三部电梯的调度策略。总之作业写的很糙,不过我还是学到了很多,把常见的事物作为作业对象,让人很容易想明白。

第三单元:这个单元简单来讲,就是照着规格写代码,这次作业利用了很多图论算法,简单来讲就是用oo写数据结构。不过只要是代码那一定离不开算法,数据结构的,重要的是如何选择一个高效的算法。

第四单元:这个单元简单来讲就是照着类图写代码,需要我们自己封装一些类。第二次作业对题意理解要求高。

三.测试理解和实践演进

以前就是简单的测评机测评。

第一单元和以前相差不大,就是要写好正则表达式,以及尽可能的想到多的情况。

第二单元真正体现了测试的重要性,要通过一些方法来进行定时输入。

第三单元测试代码有没有符合规格。

四.课程收获

通过这十几次代码作业编程能力有了提升;java语言越来越熟练;测试方法更加多样;北航计算机系难

五.建议

互测人数较多,一个一个测的话太费时间了;其实相当一部分同学在之前是没有接触过java的,能否在大一的时候有个先导课呢;在前几次作业能否宽容一下,毕竟是第一次接触这门课程。

转载于:https://www.cnblogs.com/15061005zxc/p/11075083.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值