OO unit1 summary】的更多相关文章

Unit 1 summary 一.前言 三周左右的学习,OO第一单元顺利结束了,个人认为有必要写个blog来反思总结一下自己第一单元的学习情况,以便更好地进行后面的学习. 之前从来没有写blog的习惯,这是自己第一次写blog~(^-^) 二.程序结构分析 CogC:它将一段代码被阅读和理解时的复杂程度,估算成一个具体数字. 出现"break"中止了线性的代码阅读理解,如出现循环.条件.try-catch.switch-case.一串的and or操作符.递归,以及jump to la…
OO Unit1 总结 每次作业的思路和技术分析 No.1 一共写了8个类,2个接口,主要的其实只有4个类1个接口 主要接口: PowerFunction就是每一项去掉系数的那一部分,有求导和乘法两个方法: 4个主要的: ItemMatcher负责将一行字符串解析: PolynomialInput负责从指定的InputStream一行一行读,然后利用ItemMatcher实例解析结果,创建多项式: SingleXPowerFunction实现了PowerFunction接口的类,表示只有一种未知…
一.摘要 本文是BUAA OO课程Unit1在课程讲授.三次作业完成.自测和互测时发现的问题,以及倾听别人的思路分享所引起个人的一些思考的总结性博客.本文第二部分介绍三次作业的设计思路,主要以类图的形式展现,并有简单的优劣分析:第三部分为程序代码复杂度的分析(二.三两部分为基于度量的对自己程序结构的分析):第四部分为对自己.对他人程序的测试.DEBUG.Hack的思考:第五部分是分析作业中可以应用对象创建模式的可能性,和重构的思考. 二.开发设计思路 1.程序类图展示 第一次作业 第二次作业 第…
Unit4 一.第四单元作业的架构设计 第四单元个人认为主要是考察对于层次结构的理解,即如何理解并处理好UML图的树状结构组织,在理好层次之间以及层次内部的相互关系之后,就只剩下代码实现的问题了.但是不得不说,刚开始接触UML特别是对starUML不熟悉的时候,如果指导书说的不是太清楚,真的很难动手实现,比如说在第一次作业的时候,我就完全理解错了,导致难度飞升,一度怀疑老师所说的"简单".虽然说相比JML是真的不太简单 由于主要架构课程组都已经做好了,所以我们基本不用构思什么架构,只需…
Unit3 ​ JML(Java Modeling Language) 是用于对 Java 程序进行规格化设计的一种表示语言,它对于方法内部具体是如何实现的并无要求,只是对方法的接口以及行为进行限制,具体来说就是对方法里面允许接受的数据,可以做出的改动,必须返回的数据,异常表现等进行限制,最终保证方法的无二义性. ​ 本单元的作业背景是一个简单的社交系统,允许对数据进行有序存储,建立数据之间的关系,以及精确查询,由于已经给出了JML规格,所以并不需要自己从零开始设计架构,只用把需要实现的方法按照…
Unit2 一.第一次作业 1.UML 2.Sequence Diagram 3.同步块设置与锁处理 采用了生产者-消费者模式,用共享对象来连接不同的线程. 第一次作业中,我有三个线程:Receiver,Manager,Elevator,用PersonQueue WaitingQueue分别来连接Receiver和 Manager,Manager和Elevator 整个程序中的加锁操作只针对有可能发生数据竞争的连个共享对象:PersonQueue,WaitingQueue 加锁是为了保证之后位于…
测试与正确性论证的效果差异 测试,或者说用断言进行黑箱测试,用大量的数据进行“覆盖性测试”,目的是当分支覆盖率达到100%也就是理论上来说所有可能的输入都已经测试过了,而输出结果均是正确的,那么我们理论上可以说这部分程序是没有问题的.这种测试方法的好处就是,问题暴露得十分明显,某一组数据错了,就知道问题发生的情况是什么了,复现性也很强.其实平时我们自己debug的时候用的就是这种方法,只不过那时我们测试量比较小,并没有做到全覆盖,而是向着我们感觉可能会出错的方向进行测试,导致测试以后仍然感到不安…
规格化设计的发展历史 (这一部分并没有找到答案,于是参考了好黄和温莎莎的blogs) 1950年代,第一次分离,主程序和子程序的分离程序结构模型是树状模型,子程序可先于主程序编写.通过使用库函数来简化编程,实现最初的代码重用.产生基本的软件开发过程:分析—设计—编码—测试,使大型软件系统的开发成为可能 1975—1980年代,第二次分离,规格说明(Spec)和体(body)的分离说明是类型定义和操作描述,体是操作的具体实现.(具体的例子就是C++,Java等面向对象语言的类说明与类实现的分离.)…
[第五次作业——多线程电梯] 类图 度量 协作图 设计分析: 多线程电梯是我第一次接触多线程,因此真的是无(瞎)从(g)下(2)手(写),感觉仿佛只是用一个调度器来调度3部电梯但又总觉得好像哪里不太对,加上清明节还出去浪了三天,回来以后只感觉到深深的凉意.经过了将近一天的设计(不设计好真的是一点一点都不敢写反正也要重构),总算是把大概流程理顺清楚了:输入类(InputHandler)识别输入并生成请求(Request)后加入到请求队列(reqList)中,由调度器(schedule)每次扫描请求…
原贴地址:http://scnblogs.techweb.com.cn/abaplv/archives/127.html 几年前SAP BASIS 4.6为ABAP扩展了OO功能,这是很多传统的ABAP程序员陷入困境.首先对于ABAP程序员来说它们终于可以通过OO这种开发方法得潜在价值来提高 开发效率和所开发程序的可维护性了.然而一直以来习惯于面向过程编程的ABAPER迅速的转向OO模式也不是那么容易,很多人还是坚持使用传统的面向过程 的开发模式,他们觉得不用OO也可以得到他们想要的.这篇文章的…