1、掌握面向对象、面向对象技术、面向对象方法概念
面向对象=对象 + 类 + 消息 + 继承 + 多态;
面向对象技术是基于对象概念,以对象为中心,以类和继承为构造机制,充分利用接口和多态提供灵活性,来认识、理解、刻画客观世界和
设计
领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计
、构建相应的软件系统;
面向对象方法是一种把面向对象的思想运用于软件开发过程,指导开发活动的系统方法,包括分析、设计和实现等活动。
二、面向对象四大原则
抽象:过滤掉对象的一部分特性和操作,直到只剩下所需要的属性和操作。
封装:实现信息隐藏和数据抽象。
模块:将复杂的东西拆分成易于管理的几个部分
层次:将对象以类似树形的结构进行组织
三、
1、UML概念?
Unified Modeling Language,统一建模语言,用来对软件密集系统进行可视化建模
2、UML结构包括哪三部分?其
内容
财务内部控制制度的内容财务内部控制制度的内容人员招聘与配置的内容项目成本控制的内容消防安全演练内容
?
构造块:基本UML建模元素、关系和图
公共机制:达到特定目标的公共UML方法
构架:系统架构的UML视图
3、UML构造块包含哪三部分?其内容?
物件:建模元素本身
关系:把物件联系在一起,关系说明两个或多个物件时如何语义相关的
图:UML模型的视图,它们展现物件的集合,“讲述关于软件系统的故事”,是我们可视化系统将做什么(分析级图)或者系统如何做(设计级图)的方法
4、UML物件、关系都包含什么?
物件:结构物件,行为物件,分组物件,注解物件
关系:关联,依赖,泛化,实现
5、UML包含哪九种图及其概念?(重点掌握类图、顺序图、活动图、用例图画法)
类 图:类以及类之间的相互关系
对象图:对象以及对象之间相互关系
构件图:构件及其相互依赖关系
部署图:构件在各节点上的部署
顺序图:强调时间顺序的交互图
协作图:强调对象协作的交互图
状态图:类所经历的各种状态
活动图:对工作流建模
用例图:需求捕获,测试依据
四、
1、说出“基于用例的需求分析过程”?
1. 获取原始需求
2. 开发一个可以理解的需求
2.1 识别参与者
2.2 识别用例
2.3 构建用例图
3. 详细、完整地描述需求
进行用例阐述
4. 重构用例模型
4.1 识别用例间的关系
4.2 对用例进行组织和分包
2、说出“用例规约组成”?
用例名称;用例标识;涉及的参与者;描述;用例的规格说明(前置条件,后置条件,正常事件流,备选事件流);其它(非功能需求、设计约束、尚存在的问题 )
3、说出用例的三种关系、图形及概念?
Extend
分离扩展路径
Include
提取公共步骤,便于复用
Generalization
同一业务目的的不同技术实现
五、
1、构架MVC概念?
MVC是一种处理交互式行为的模式,不仅仅可以用于user interface处理,只要是“若 干对象协作,使得整体上对另一个对象而言
表
关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf
现出可交互性”,就可以运用MVC模式。 所以,几乎可以说MVC能够运用在大多数场合
2、说出用例分析技术中面向对象分析过程?经常用到的UML图有哪些?
1. 寻找候选对象—>对象清单 2. 描述对象间的交互 交互图(顺序图)
3. 描述类 类图(VOPC)
3、分析中有哪三种重要对象?概念?
实体对象:对系统的业务数据和业务逻辑进行封装
边界对象:描述系统将如何用参与者交互
控制对象:为其他对象提供工作流和会话服务
六、
1、面向对象的基本设计原则有哪些?举例说明OCP开放-封闭原则,要求画图?
LSP:替换原则 OCP:开放-封闭原则 SRP:单一
职责
岗位职责下载项目部各岗位职责下载项目部各岗位职责下载建筑公司岗位职责下载社工督导职责.docx
原则 ISP:接口隔离原则
DIP:依赖倒置原则
例子:如何在程序中模拟用手去开门和关门?
行为:开门(open)关门(close)
判断门的状态(isOpened)
为冰箱实现Excutable接口
不需要修改任何原有的设计和代码
2、掌握SRP(The Single Responsibility Principle, 单一职责原则)并要求举例说明?
SRP(单一职责原则):就一个类而言,应该仅有一个引起它变化的原因,是有关类的 职责分配问题,是面向对象设计中最重要的基本原则。
例子:
Rectangle类可能会因为两方面的原因而变化:计算几何方面的原因和用户界面设计方 面的原因。其中只一发生变化之后,必须修改Rectangle类,而这种修改则可能导致 另一个应用程序出错,除此之外,违反SRP还会带来物理依赖的缺点。
七、掌握单例模式及代码?
八、
1、分析建模与设计建模区别?
分析:做什么 设计:怎么做
分析模型虽然有效地确定了将要构建的内容,但是却没有包含足够的信息来定义如何构 建系统,而面向对象的设计用来填补分析和实现之间的差距
2、子系统与包区别?
子系统:提供行为,完全封装实现细节,容易替换
包:不提供行为,不完全封装实现细节,难以替换
3、设计类概念?
设计模型的构造块,是已经完成了规格说明并且达到能够被实现程度的类
4、举例说明GRASP中的“不要和陌生人讲话”,要求画图说明?
九、
考勤卡或者旅店管理系统
1、 画出用例图(用例建模)
考勤卡用例图
旅店管理系统用例图
2、 写2个关键用例的用例文档(用例建模)
旅店管理系统的 “Record Time”用例文档
? 用例名称:Record Time(
记录
混凝土 养护记录下载土方回填监理旁站记录免费下载集备记录下载集备记录下载集备记录下载
时间)
? 用例标识:UC01
? 涉及的参与者:雇员、系统管理员
? 描述:雇员利用“Record Time”用例来登记他们的工时,系统管理员用这个用例为任何雇员登记时间
? 前置条件:用户必须已经登录到这个系统
? 后置条件:系统将雇员的工时正确的记录到数据库中
? 正常事件流:
1. 雇员查看当前时间之前输入的数据;
2. 雇员从已有的支付号码中选择一个,这些收费代码是按客户和项目组织的;
3. 雇员从当前的时间段选择一个日期;
4. 雇员输入以正整数表示的工时;
5. 系统在视图中显示这个数据,并在以后的视图中看到这个数据。
? 备选事件流1:雇员更改他的时间
1. 雇员查看当前时间之前输入的数据;
2. 雇员选择一个已有的条目;
3. 雇员改变工时;
4. 在视图中更新这个信息,并在以后的视图中都可以看到。
? 非功能需求:无
? 设计约束:无
? 部署约束:用户可以从客户端或雇员的家中访问到“Record Time”用例,如果是从客户端访问,则要考虑到客户端的防火墙
? 未解决的问题
● 雇员是否可以在以前的考勤卡上输入和更改时间
● 雇员是否可以在以后的考勤卡上输入和更改时间,例如,在休假之前?
3、 针对这两个关键用例画出边界类图、控制类图和实体类图(分析建模)
边界类图
控制类图
实体类图
4、 针对这两个关键用例画出主要的事件流顺序图(分析建模)
5、 针对这两个关键用例画出其VOPC类图。(分析建模)