#OO第一单元作业总结

#确认存活,爱学习,爱北航,爱OO

一、三次作业分析

1.第一次作业

1.1 程序结构

对方法的度量:

类的内聚和相互间的耦合情况:

类图:

优缺点:

优点大概没什么优点,毕竟我只是个emmmm

缺点是显而易见的简单粗暴,一个Polynomial干到底,输入输出提取优化求导一站式操作,完全没有get到面向对象。

1.2 bug分析

未通过的公测用例:   无

被互测发现的bug:    未处理的空白字符,理解错题意害死人。×n

Bug修复:                     因考虑疏忽产生的bug,将未考虑部分补全即可。

2.第二次作业

2.1 程序结构

方法度量:

类的内聚和相互间的耦合情况:

类图:

优缺点:

和上一次相比终于搞出了项来承接多项式,迈出了思维转变的第一步。

但是依旧没有扩展性,在下一场战斗中光荣牺牲。

虽然这次战斗也因为时间赶而疏忽的很惨。

2.2 bug分析

未通过的公测用例:    空格太多在正则匹配时出现了TLE错误×1

toString时未考虑常数项前的加号而出现格式错误×2

处理减号与负号同时出现的问题时未考虑周全而出现结果错误×2

被互测发现的bug:     toString时未考虑常数项前的加号而出现格式错误×3

处理减号与负号同时出现的问题时未考虑周全而出现结果错误×3

Bug修复:                   因考虑疏忽产生的bug,将未考虑部分补全即可。

3.第三次作业

3.1 程序结构

方法度量:

类的内聚和相互间的耦合情况:

类图:

优缺点:

使用了上课学到的接口和继承,有了那么一点面向对象的样子。

因为时间赶得太紧没有写完优化,有一部分类方法冗余,然后完全没有性能分。

3.2 bug分析

未通过的公测用例:       因表达式因子嵌套太多而导致TLE×2

被互测发现的bug:        因表达式因子嵌套太多而导致TLE×1

Bug修复:                   将多余的表达式因子括号消除可解决部分TLE问题。

单纯因为嵌套导致的问题涉及程序结构问题,无法在小范围内修改解决。

二、bug寻找策略 

(小声bb)如果我会找bug我也不会被人打得那么惨还没办法还手了。

随手试试>>指导书样例>>根据指导书叙述尽可能覆盖生成样例>>神奇脑洞测试>>面向测评机试试

有效性几乎等于没有,勉强活过中测。

吸取惨痛教训,向dalao低头。

至于别人的bug……Peace is all……

三、Applying Creational Pattern

可以用工厂模式构造项、多项式等对象。

回头慢慢学吧……

All in all:

活着就是最大的胜利,以后的日子也要加油鸭!

【BUAA-OO】第一单元作业总结的更多相关文章

  1. 多项式与三角函数求导——BUAA OO 第一单元作业总结

    第一次作业 需求简要说明 针对符合规定的多项式表达式输出其符合格式规定的导函数多项式,格式错误输出WRONG FORMAT! 带符号整数 支持前导0的带符号整数,符号可省略,如: +02.-16> ...

  2. 【OO学习】OO第一单元作业总结

    OO第一单元作业总结 在第一单元作业中,我们只做了一件事情:求导,对多项式求导,对带三角函数的表达式求导,对有括号嵌套的表达式求导.作业难度依次递增,让我们熟悉面向对象编程方法,开始从面向过程向面向对 ...

  3. 【作业1.0】OO第一单元作业总结

    OO第一单元作业已全部完成,为了使这一单元的作业能够收获更多一点,我回忆起我曾经在计算机组成课设中,经常我们会写一些实验报告,经常以此对实验内容反思总结.在我们开始下一单元的作业之前,我在此对OO第一 ...

  4. OO第一单元作业总结——表达式求导

    OO第一单元作业总结 第一次作业 基于度量分析代码结构 基本算法 第一次作业是简单多项式导函数求解,不需要对输入数据的合法性进行判定, 基本思想是用 (coeff, expo)表示二元组 coeff* ...

  5. OO第一单元作业总结

    oo第一单元的作业是对多项式的求导.下面就是对三次作业分别进行分析. 第一次作业 分析 第一次作业相对来讲比较简单,甚至不用面向对象的思想都能十分轻松的完成(实际上自己就没有使用),包含的内容只有常数 ...

  6. 北航OO第一单元作业总结(1.1~1.3)

    经过了三次作业之后,OO第一单元告一段落,作为一个蒟蒻,我初步了解了面向对象的编程思想,并将所学内容用于实践. 一.第一次作业 1.架构分析 本次作业需要完成的任务为简单多项式导函数的求解.表达式仅支 ...

  7. OO第一单元作业小结

    前言 第一单元的主题是表达式求导,第一次作业是只带有常数和幂函数的求导,第二次作业加入了正余弦函数,第三次作业又加入了表达式嵌套,难度逐渐提升.总体来说前两次作业还易于应对,而第三次作业做得相对有些艰 ...

  8. 电梯模拟系统——BUAA OO第二单元作业总结

    需求分析 官方需求 本次作业需要模拟一个多线程实时多电梯系统,从标准输入中输入请求信息,程序进行接收和处理,模拟电梯运行,将必要的运行信息通过输出接口进行输出. 本次作业电梯系统具有的功能为:上下行, ...

  9. 2019北航OO第一单元作业总结

    一.前三次作业内容分析总结 前言 前三次作业,我提交了三次,但是有效作业只有两次,最后一次作业没能实现多项式求导的基本功能因此无疾而终,反思留给后文再续,首先我介绍一下这三次作业,三次作业围绕着多项式 ...

  10. OO第一单元作业——魔幻求导

    简介 本单元作业分为三次 第一次作业:需要完成的任务为简单多项式导函数的求解. 第二次作业:需要完成的任务为包含简单幂函数和简单正余弦函数的导函数的求解. 第三次作业:需要完成的任务为包含简单幂函数和 ...

随机推荐

  1. Java面试题和解答(四)

    1.JVM什么情况下会GC,GC策略有哪些 当应用程序分配新的对象,GC的代的预算大小已经达到阈值,比如GC的第0代已满:代码主动显式调用System.GC.Collect():其他特殊情况,比如,系 ...

  2. 013-mac重做系统后的软件安装

    一.系统设置 1.屏幕设置:系统偏好设置→显示器→排列,多个显示器可以排列组合 2.touch bar功能键设置:系统偏好设置→键盘→键盘,触控栏设置 F1 3.程序坞[dock]设置:系统偏好设置→ ...

  3. #20175201 实验二:Java面向对象程序设计

    20175201 实验二:Java面向对象程序设计 实验二 Java面向对象程序设计 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S.O.L ...

  4. Freeswitch配置之sofia

    SIP模块 - mod_sofia SIP 模块是 FreeSWITCH的主要模块. 在 FreeSWITCH中,实现一些互联协议接口的模块称为 Endpoint.FreeSWITH支持很多的 End ...

  5. Android Studio旧版(内含SDK)安装和环境变量配置 转自I-T枭

    win10下Android Studio和SDK下载.安装和环境变量配置 ------made by siwuxie095 转自I-T枭https://me.csdn.net/hahahhahahah ...

  6. 使用jEnv在Mac/Linux环境配置多版本Java

    jEnv 是什么? 先来看一下官方介绍 jEnv is a command line tool to help you forget how to set the JAVA_HOME environm ...

  7. 使用rsync在linux(客户端)拉取windows(服务端)数据

    windows 服务端ip:172.18.18.70 Linux客服端ip: 172.18.54.11 1.windows服务端下载cwRsync Server , 地址:https://www.ba ...

  8. FB面经 Prepare: Largest Island

    Find largest island in a board package fb; public class LargestIsland { public int findLargestIsland ...

  9. java操作JacocClient下载dump文件

    记录瞬间 import org.jacoco.core.data.ExecutionDataWriter; import org.jacoco.core.runtime.RemoteControlRe ...

  10. React(上)

    一.React基础 1.React模板 凡是使用JSX的地方,要加上type="text/babel".引用三个库react.js是React的核心库,react-dom.js提供 ...