
课件理解
qq_42766619
这个作者很懒,什么都没留下…
展开
-
2.1软件生命周期与配置管理
2.1软件生命周期与配置管理1.知道软件开发的基本过程(Software Development Lifecycle:SDLC)2.传统的软件开发过程模型3.敏捷开发的介绍4.*合作式的软件发展(Collaborative software development)5.软件配置工具(Software Configuration Management:SCM)6.git作为配...原创 2019-05-26 16:10:32 · 384 阅读 · 0 评论 -
6.1 Metrics and Construction Principles for Maintainability --可维护性的度量与构造原则
6.1 Metrics and Construction Principles for Maintainability--可维护性的度量与构造原则1. Software Maintenance and Evolution软件维护与软件演化2. Metrics of Maintainability可维护性策略3.Modular Design and Modularity Prin...原创 2019-06-15 09:29:16 · 230 阅读 · 0 评论 -
5.1可复用性的度量、形态与外部表现
5.1 Metrics, Morphology and External Observations of Reusability:可复用性的度量、形态与外部表现1.什么是软件的可复用性2.怎样衡量可复用性3.可复用组件的等级和形态--源代码级别的复用--模块级别的复用:类/抽象类/接口--库级别的复用:API/包--系统级别的复用:框架4...原创 2019-06-10 16:11:38 · 422 阅读 · 0 评论 -
5.2 Construction for Reuse面向复用的软件构造技术
5.2 Construction for Reuse面向复用的软件构造技术1.设计可复用的类--继承与重写--重载--参数多态和泛型编程--行为子类型和Liskov替换原则--组合与委托2.设计可复用库和框架--API和库--Framework JAVA Collections framework1 Designing reus...原创 2019-06-10 16:12:33 · 336 阅读 · 0 评论 -
6.2Design Patterns for Maintainability面向可维护性的设计模式
6.2Design Patterns for Maintainability面向可维护性的设计模式1.创造模式工厂方法模式:不用具体的类来创造对象抽象工厂模式:有一个共同的特点的工厂组Builder模式:构造复杂的对象2.结构模式Bridge模式Proxy模式Composite模式3行为模式Mediator模式Observer模式Visitor模式...原创 2019-06-15 20:18:11 · 287 阅读 · 0 评论 -
6.3 Maintainability-Oriented Construction Techniques面向可维护性的构造技术
6.3 Maintainability-OrientedConstruction Techniques面向可维护性的构造技术1.状态驱动的构造技术--基于自动机的编程--Memento设计模式--State设计模式2表驱动的构造模式(略)2.基于语法的构造技术--语法和解析器--正则表达式--Interpreter设计模式1 State-...原创 2019-06-15 20:45:14 · 301 阅读 · 0 评论 -
7.1 Robustness and Correctness健壮性与正确性
7.1 Robustness and Correctness健壮性与正确性1什么是健壮性和正确性2怎么衡量健壮性和正确性3这章的目的1.What are Robustness& Correctness?健壮性:系统在不正常输入或不正常外部环境下仍能够表现正常的程度正确性:程序按照spec加以执行的能力,是最重要的质量指标!正确性...原创 2019-06-15 20:53:44 · 331 阅读 · 0 评论 -
5.3 Design Patterns for Reuse面向复用的设计模式
5.3 Design Patterns for Reuse面向复用的设计模式1.结构型模式**Adapter模式利用包装使类和不兼容接口一起工作**Decorator模式动态添加或重写已存在对象的行为**Facade模式提供大体积代码的简化的接口1.行为类模式**Strategy模式允许一家族的算法在运行时被选择**Templa...原创 2019-06-10 16:48:48 · 274 阅读 · 0 评论 -
7.2Error and Exception Handling错误与异常处理
7.2Error and Exception Handling错误与异常处理1 Error and Exception in Java JAVA中的错误和异常2 Exception Handling–What is Exception?–Classification of exceptions–Checked and unchecked exceptions–H...原创 2019-06-16 23:05:42 · 443 阅读 · 0 评论 -
3.5ADT 和OOP 中的”等价性”
3.5 Equality in ADT and OOP ADT和OOP中的”等价性”1.等价关系2.不变类型的等价性3.引用等价性和对象等价性4.可变数据类型的观察等价性和行为等价性5.Object契约6. Autoboxing and Equality 1 Equivalence Relation等价关系ADT是对数据的抽象,...原创 2019-06-08 15:41:05 · 332 阅读 · 0 评论 -
3.4 Object-Oriented Programming (OOP)面向对象的编程
3.4 Object-Oriented Programming (OOP)面向对象的编程1.Criteria of Object-Orientation面向对象的标准2. object, class, attribute, method, interface, and enumerations OOP的基本概念3.OOP的一些特点:Encapsulation and infor...原创 2019-06-08 14:50:08 · 293 阅读 · 0 评论 -
3.3Abstract Data Type抽象数据类型
3.3Abstract Data Type (ADT)抽象数据类型1.Abstraction and User-Defined Types抽象和用户定义类型2.Classification of operations in ADT抽象数据类型的分类3.Abstract Data Type Examples抽象数据类型的范例4.Design principles of ADT抽象数据...原创 2019-06-08 01:42:35 · 673 阅读 · 0 评论 -
课件1.1
1.1软件构造的多维度视图1.从三个维度看软件系统的构成2.用什么样的模型/视图描述软件系统3.将“软件构造”看作“不同视图之间的转换”不同维度下的软件视角(十分重要)一.§ Multi-dimensional software views- By phases: build- and run-time views 按阶段划分:构造时/运行时视图– By...原创 2019-05-22 22:57:56 · 232 阅读 · 0 评论 -
1.2软件构造的性能指标
1.2软件构造的性能指标1.软件构造过程中应考虑的重要质量指标2.如果达不到期望的质量目标,会有什么后果3.有哪些面向质量指标的软件构造技术Quality properties of software systems软件系统的指标特征– External vs. internal quality factors内部和外部质量因素– Important ex...原创 2019-05-23 00:04:26 · 373 阅读 · 0 评论 -
10.2Thread Safety线程安全
10.2Thread Safety0.Thread safety1.Strategy 1: Confinement限制共享2.Strategy 2: Immutability共享不变量3.Strategy 3: Using Threadsafe Data Types用线程安全数据类型4.Strategy 4: Locks and Synchronization线程锁...原创 2019-05-30 16:50:01 · 342 阅读 · 0 评论 -
10.1 并发(Concurrency)
10.1并发(Concurrency)1.什么是并发编程(Concurrent Programming)2.进程,线程和时间切片 Processes,threads,and time-slicing3.相互交错和竞争(Interleaving and Race Condition)(1) Time slicing时间切片(2) Shared Memory among ...原创 2019-05-28 07:36:14 · 473 阅读 · 0 评论 -
10.3 Locks and Synchronization锁与同步
10.3 Locks and Synchronization锁与同步§1.Synchronization§2.Locking§3.Atomic operations§4.Liveness: deadlock, starvation and livelock§5.wait(), notify(), and notifyAll()1.Synchroniza...原创 2019-05-31 15:38:46 · 285 阅读 · 0 评论 -
2.2软件构造的过程、系统和工具
2.2软件构造的过程、系统和工具软件构造遵循什么子过程?广义:软件构造的过程Design ->Programming/refactoring ->Debugging->Testing ->Build->Release–Programming / refactoring编程/重构–Review and static code analysi...原创 2019-06-07 11:37:07 · 298 阅读 · 0 评论 -
3.1数据类型与类型检验
3.1Data Type and Type Checking数据类型与类型检验1.静态/动态类型检查2.可变/不变的数据类型3.可变数据类型的危险性4.不变数据类型的优越性5.用snapshot图理解数据类型6.用集合类表达复杂数据类型7.知道Null reference的危害并避免它1 Data type in programming l...原创 2019-06-07 16:08:04 · 387 阅读 · 0 评论 -
3.2 设计规约
3.2 Designing Specification设计规约1.Function / method in programming language编程语言中的函数/方法2. Specification: Programming for communication spec:交流Why specification is needed为什么需要specBehavio...原创 2019-06-07 17:08:13 · 287 阅读 · 0 评论 -
7.3Assertions and Defensive Programming断言与防御式编程
7.3Assertions and Defensive Programming断言与防御式编程1.回忆:设计ADT2.Assertions声称--What to Assert and What not to?断言什么,不断言什么--Guidelines for Using Assertions 断言的帮助3.Defensive Programming防御式拷贝...原创 2019-06-17 06:59:15 · 319 阅读 · 0 评论