只显示主题贴
天下莫大于秋毫之末,而大山为小......
6.2.2 架构分析的作用
a、架构分析为软件定义了科学的结构和规则,可以有效地控制软件地复杂性,易于理解、实现和管理
架构模式描述了软件系统基本的结构组织策略
设计要求:
层和层之间的耦合应该尽可能地松散
级别相同、指责类似的元素应该北组织到同一层中;
复杂的模块应该被继续分解为粒度更细的层或子系统;
应尽量将可能发生变化的元素封装到一个层中,这样,变化发生时我们只要改变受影响的层就可以了
每一层只调用下一层提供的功能服务,决不能调用上一层提供的功能服务,避免循环依赖
- 进入论坛 Java 版
不,我不想要自由;我只要条出路,向左或是向右,到哪儿都行。
5.2 面向对象的思维方式:围绕对象和类来分析、设计软件系统
5.3 面向对象分析
面向对象分析的主要任务就是根据用户需求,建立一个准确的、完整的、一致的系统模型。这个过程的输入是软件的功能性需求。该过程产生三个分析模型:
a、功能模型:把用户的功能性需求转化为开发人员和用户都能理解的一种表达方式,其结果就是我们此前谈到的用例模型
b、对象模型:通过对用例模型的分析,把系统分解成互相协作的分析类。一般情况下,我们通过类图和对象图来描述系统中所有对象、对象属性、及对象之间的相互关系。对象模型就是系统的 ...
- 进入论坛 Java 版
见山是山 见水是水;见山不是山,见水不是水;见山只是山,见水只是水;
GoF 《设计模式》
设计模式中蕴涵的面向对象设计原则和设计思路:
a、设计模式最根本的意图是适应需求变化
b、针对接口编程,而不是针对实现编程
c、优先使用聚合,而不是继承
4.3.6 设计模式的分类
a、按设计模式的目的分类(主要用来完成什么工作):创建型模式(封装对象的创建过程)、结构型模式(处理类或对象的组织结构)、行为型模式(指导类和对象之间的交互以及职责分配关系)
b、按处理范围不同:类模式(处理类和派生类之间的继承关系)、对象模式(处理对象之间的组织关系)
- 进入论坛 Java 版
思想的真正客观性应该是:思想不仅是我们的思想,同时也是事物的自身,或对象性的东西的本质
衡量软件的设计质量:可读性、可复用性、可扩展性、可维护性
面向对象的基本概念:
封装:对现实世界的模拟,反映某一种事物的共性
继承 :遗传
多态性 :静态多态性,动态多态性
抽象
面向对象的基本原则:
开闭原则:一个模块对扩展应是开放的,对修改应是关闭的
完全替换原则:派生类应该能完全替换掉基类
依赖倒置原则:依赖于抽象,而不要依赖于具象
非循环依赖原则:包和包之间不能有循环依赖关系
只实现你真正需要的东西,不要去实现你认为需要的东西
不要重复自己:任何代码 ...
- 进入论坛 Java 版
用例分析:海底总动员VS.云中漫步
横看成岭侧成峰,远近高低各不同。不是庐山真面目,只缘身在此山中。
2.1 用例图:UML类图、顺序图、协作图
2.2 为什么要使用UML 建模工具 Rational Rose 的CASE工具
2.3 用例模型
2.3.1 什么是用例模型:用例模型是从外部用户和外围系统的角度,分析和考察待开发系统的行为,并通过参与者(Actor)与系统之间的交互关系描述了系统对外提供的功能特性--这种参与者与系统功能特性间的交互关系就是我们所说的“用例(use case)”
用例三要素:a ...
- 进入论坛 Java 版
最近在读王咏武先生兄弟写的《道法自然--面向对象实践指南》,收获颇多!
现在还只是读了第一章和第二章
第一章 需求分析:追求完美VS容忍缺陷
在生活的任何领域寻求完美,都不过是抽象的、病态的或无聊的幻想而已!
1.2鱼和熊掌:在满足需求的情况下,尽量选择“小鱼”,而舍弃“熊掌”;只有存在无可置疑的理由时,才选择“熊掌”作为设计方案
1.3项目目标和项目范围
1.3.1 项目目标:软件开发项目应该有明确的项目目标。
1.3.2 项目范围:发电厂、输电系统、插座、台灯的引用{底层的操作系统就像是发电厂 ...
- 进入论坛 Java 版







评论排行榜