-
BUAA-OO-第一单元总结
HW1 第一次作业主要是主要是完成对包含 "+,-,*,**,()" 的表达式进行拆括号并化简的过程。 1.1 UML图 1.2 类复杂度分析 OCavg : Cyclomatic Complexity of a Class OCmax : Maximum operation complexity -
BUAA OO 第一单元总结
#BUAA OO 第一单元总结 - 第一次作业 第一次作业要求化简一个一元(变量只能为$x$)的表达式,其中可以出现空白符和连续的正负号,至少需要去掉所有括号。为了得到性能分,还需要进行合并同类项的操作。 ###· 程序架构 (一些类的get和set方法没有明确标出) 第一次作业采用了递归下 -
OO_U1总结
OO_U1总结 一、简介 1. 第一次作业 本次作业是简单的多项式化简,我将输入划分为表达式、项、因子三个层次进行解析。本次作业难点主要在于表达式因子相乘或加减的情况。在训练中官方提供的思路为递归下降解析,但是我使用的并非这个方法,我在每一个层次进行解析再下发给下一个层次,这是一种逻辑上较为简单的方 -
2022面向对象设计与构造第一单元总结
一、程序结构度量 1.1 第一次作业 1.1.1 类的度量 各类的规模 类 属性个数 方法个数 类代码规模 Task1(主类) 0 4 151行 Polynomial 3 2 52行 Term 1 5 123行 BasePoly 3 2 89行 BaseTerm 2 6 64行 各方法的规模(采用I -
BUAA OO Unit1 总结
第一单元的作业是对表达式进行括号展开然后化简,由第一次作业的简单幂函数加括号,到第三次支持求和函数、自定义函数,三角函数与它们之间的嵌套与递归调用,难度逐步增大。在此,我采用的思路都是: \[ 递归下降解析 \rightarrow 表达式与项的括号展开 \rightarrow 化简表达式 \righ -
BUAA OO 第一单元作业总结
BUAA OO 第一单元作业总结 第一次作业 作业构思 第一次作业要求实现对单变量因子的表达式进行括号展开、合并、化简,本人考虑到后续迭代的要求,选择了递归下降的方式解析表达式,单独建一个Lexer类和Parse类,分别负责提取表达式的各部分和解析,同时建立了三层表达式树,具体如下: |- Main -
OO第一次总结
OO第一次总结 一、架构设计体验 本次作业的主要目的是实现一个支持求和函数sum(i,s,e,expr),自定义函数f(x,y,z),以及三角函数及各种因子的表达式进行拆括号、化简工作。要求最终结果复合表达式定义,且没有多余括号。 对于该问题,我将按照课上所示输入处理(Parser...)、 -
BUAA_OO_2022_第一单元总结
面向对象 第一单元总结 第一次作业 总体架构 万事开头难,在经过若干次脑海中的模拟、推导、重构的循环后,我终于确定了本次作业的总体架构:先对输入进行递归解析,建立起一颗表达式树;之后再对表达式树进行计算与化简。因此,本次作业的各类的整体结构分为三个部分:MainClass 类为程序主控类,负 -
BUAA-OO 第一单元总结
BUAA-OO 第一单元总结 前言 OO第一单元的三次作业都围绕着表达式展开进行。从面向过程编程逐渐转换为面向对象编程、每次作业的拓展迭代都是不小的挑战。尽管完成了三次作业,但是自己还有一些地方存在缺陷,需要进一步反思。希望能够通过这次博客作业来分析和总结这单元的收获与不足。 一、程序结构分析 1. -
OO第一单元总结
本文是本人在OO第一单元的总结。主要架构是递归下降。