自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(6)
  • 收藏
  • 关注

原创 软件构造复习6

1.并发 创建线程: 1.继承Thread类,重写run()方法 new HellowThread().start();开始线程 2.实现runnable接口,重写run()方法 new Thread(new HellowThread()).start();开始线程

2020-07-11 10:13:21 135

原创 软件构造复习5

1.健壮性与正确性 健壮性:系统在不正常输入或不正常外部环境下仍能够表现正常的程度 正确性:程序按照spec加以执行的能力,是最重要的质量指标 对外的接口,倾向于健壮;对内的实现,倾向于正确 2.错误与异常处理 分类: unchecked异常:Error类、Exception类中的运行时异常 checked异常:Exception类中除运行时异常外的其他异常,如AWT,IOE异常 Exception类: 运行时异常:运行时异常,是程序源代码中引入的故障所造成的,如果在代码中提前进行验证,这些故障就可以避免

2020-07-10 22:54:23 108

原创 软件构造复习4

1.可维护性的度量与构造原则 Single Responsibility Principle(单一责任原则):不应有多于1个的原因使得一个类发生变化 Interface Segregation Principle (接口隔离原则):不能强迫客户端依赖于它们不需要的接口:只提供必需的接口 Dependency Inversion Principle (依赖转置原则):抽象的模块不应依赖于具体的模块,具体应依赖于抽象 如delegation的时候,要通过interface建立联系,而非具体子类 2.面向可维护性

2020-07-10 21:45:25 156

原创 软件构造复习3

1.可复用性的度量、形态与外部表现 白盒复用:源代码可见,可修改和扩展 黑盒复用:源代码不可见,不能修改 白盒框架:通过代码层面的继承进行框架扩展 黑盒框架:通过实现特定接口/delegation进行 框架扩展 2.面向复用的软件构造技术 LSP原则:在任何可以使用父类的情况中,都可以用子类代替 应用条件: 1.子类型可以增加方法,但不可删除方法 2.子类型需要实现抽象类型中的所有未实现方法 3.子类型中重写的方法必须有相同或子类型的返回值或者符合co-variance的参数 4.子类型中重写的方法必须使用

2020-07-10 19:26:58 144

原创 软件构造复习2

1.设计规约 前置条件:对客户端的约束,在使用方法时必须满足的条件 后置条件:对开发者的约束,方法结束时必须满足的条件 契约:如果前置条件满足了,后置条件必须满足。前置条件不满足,则方法可做任何事情 spec变强:更放松的前置条件+更严格的后置条件 在不冲突的情况下,强规约可以替代弱规约 S2比S1有更严格的后置条件:在满足S1的前置条件的前提下,S2后置条件强于S1的后置条件 Diagramming specifications: 某个具体实现,若满足规约,则落在其范围内;否则,在其之外。 更强的规约,

2020-07-10 16:58:32 162

原创 软件构造复习1

1.三维视图 维度1:构造阶段,运行阶段 维度2:代码层面,组件层面 维度3:瞬时性,周期性 2.git 工作原理: 工作区->暂存区->本地仓库->远程仓库 Git存储发生变化的文件(而非代码行),不变化的文件不重复存储 git指令: 创建仓库 git init 将文件添加到暂存区 git add 文件名 将文件提交到仓库区 git commit -m 提交说明 列出所有本地分支 git branch 新建分支 git branch 分支名 切换到某分支 git checkout 分

2020-07-10 14:32:18 147

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除