- 博客(11)
- 收藏
- 关注
原创 设计模式
1.Creational patterns创建型模式1.1Factory Method pattern工厂方法模式不使用同名构造器接口中定义一个工厂方法具体类中具体实现静态工厂方法 加上static2.Structural patterns 结构型模式2.1Adapter Pattern(适配器模式)作用:将某个类/接口转换为client期望的其他形式。解决类之间接口不兼容的问题。通过增加一个接口,将已存在的类/接口封装起来,client面向新接口编程,从而隐藏了.
2021-07-07 21:14:54
140
原创 面向可维护性的构造技术
1.maintenance纠错适应 完善 预防2.maintainability可维护性:易于纠错、改善性能、改变属性、适应新环境(笼统)可扩展性灵活性可适应性可管理性支持性 上线后可以有效运行的时间优秀:设计简单 模块内部聚合 之间松散耦合 CRP...
2021-07-07 15:38:21
192
原创 软件构造复习笔记:5-6
五、设计规约1.Specification 、前置/ 后置条件什么是规约(specification)。从代码角度来说,规约相当于一个说明,读你的规约,我们就可以知道你的代码想要完成什么功能,你的输入输出的数据类型,功能和正确性,你的异常处理,性能等等,但是并不包括你的内部实现,它仅仅是一个说明。从客户端和书写ADT的程序员之间来说,这也相当于一种契约,在spec规定说明的情况下,对于每一种情况程序应该做出什么样的处理都是固定的。如果客户违反了spec,那么不客气的说程序就可以为所欲为了.
2021-07-07 02:30:46
176
原创 Delegation 委托
1. 对象不在rep里Dependecy 依赖在方法参数或者局部变量中class Duck {//no field to keep Flyable object void fly(Flyable f) { f.fly(); }}2.对象在rep中2.1 在rep中初始化:Composition 组合class Duck { Flyable f = new FlyWithWings(); void fly() {
2021-07-06 22:40:08
95
原创 Iterator迭代器
做实验的时候要用到的方法,记录一下Java Iterator(迭代器) | 菜鸟教程 (runoob.com)Java Iterator(迭代器)不是一个集合,它是一种用于访问集合的方法,可用于迭代ArrayList和HashSet等集合。迭代器 it 的两个基本操作是 next 、hasNext 和 remove。调用 it.next() 会返回迭代器的下一个元素,并且更新迭代器的状态。调用 it.hasNext() 用于检测集合中是否还有元素。调用 it.remove...
2021-07-02 22:23:21
69
原创 软件构造实验2 : 实验记录
1. 实验目标概述本次实验训练抽象数据类型(ADT)的设计、规约、测试,并使用面向对象编程(OOP)技术实现ADT。具体来说:l 针对给定的应用问题,从问题描述中识别所需的ADT;l 设计ADT规约(pre-condition、post-condition)并评估规约的质量;l 根据ADT的规约设计测试用例;l ADT的泛型化;l 根据规约设计ADT的多种不同的实现;针对每种实现,设计其表示(representation)、表示不变性(rep invariant...
2021-07-01 21:29:16
332
原创 软件构造实验1:实验记录
实验目标概述本次实验通过求解三个问题,训练基本 Java 编程技能,能够利用 Java OO 开发基本的功能模块,能够阅读理解已有代码框架并根据功能需求补全代码,能够为所开发的代码编写基本的测试程序并完成测试,初步保证所开发代码的正确性。另一方面,利用 Git 作为代码配置管理的工具,学会 Git 的基本使用方法。⚫ 基本的 Java OO 编程⚫ 基于 Eclipse/IDEA IDE 进行 Java 编程⚫ 基于 JUnit 的测试⚫ 基于 Git 的代码配置管理实验环境配置..
2021-06-29 00:44:50
191
原创 软件构造笔记:AF、RI、Safety from rep exposure
AF全称Abstraction function(抽象函数),类似于一个映射其中R是创建的类,A是抽象值构成的空间AF一定是满射,不一定是单射,也就不一定是双射(也就是R中的类不一定能找到A,但是A中的抽象必须有R中对应的类)举例:RIRI全称是:Representation invariant(表示不变量),用来表示“什么样的类满足抽象”以上图为例,“abbc”就是不满足RI的元素,一个满足这个图的RI就是“不可以有重复的字母”可将RI看作:一个条件,描述了什么是
2021-06-29 00:06:15
204
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人