UML和模式应用学习笔记(1)——UML与OOD/A

      UML 统一建模语言,是标准的图形表示法。UML并不是OOA/D,也不是方法,它只是图形表示法。需要真正理解面向对象。UML就是我们需要用于OOA/D和“软件蓝图”的语言。它就是一种思考的工具,也是一种沟通的形式。

      引用:统一建模语言(UML)是描述、构造和文档化系统制品的可视化语言。

应用UML的三种方式:

  UML作为草图——非正式的、不完整的图,借助可视化语言的功能,用于探讨问题或解决方案空间的复杂部分。

  UML作为蓝图——相对详细的设计图,用于:1)逆向工程,即以UML图的方式对现有代码进行可视化,使其易于理解。2)前向工程,即代码生成。

  UML作为编程语言——用UML完成软件系统可执行规格说明。

  敏捷建模强调了UML作为草图的方式,这也是使用UML的普通方式。

应用UML的三种透视图

  1)概念透视图:用来描述现实世界或关注领域的事物。

  2)规格说明(软件)透视图:用图来描述软件的抽象事物或具有规格说明和接口的构件,但是并不约定实现。

  3)实现(软件)透视图:用图来描述特定技术中的软件实现。

 OOD原则

头五项原则是关于类设计的,它们是:

三项包原则是关于包内聚性的,它们会告诉我们该把什么划分到包中:

三项原则是关于包之间的耦合性原则的,并且论述了评价系统中包结构优良与否的评判标准。

 

       这些原则不是什么新奇的玩意,只要熟悉面向对象的开发人员,都应该知道或者说是了解。但都比较难理解和应用,没有十年的经验真的很难理解透面向对象。 在《UML和模式应用》中认为经典OOD的象征是职责驱动设计(responsibility-driven Design)。关于职责驱动设计我也不明白,可能在以后的学习中遇到。 在OO开发中,至关重要的能力是熟练地为软件对象分配职责。为什么?我想可能是因为分配职责是必须要执行的一项活动,并且它对软件构件的健壮性、可维护性和可重用性具有重要的影响。

       在面向对象分析过程中,强调的是在问题领域内发现和描述对象。在面向对象设计过程中,强调的是定义软件对象以及它们如何协作以实现需求。

 

转载于:https://www.cnblogs.com/Daywei/archive/2011/06/24/2088865.html

下载前必看:https://pan.quark.cn/s/a4b39357ea24 在本资料中,将阐述如何运用JavaScript达成单击下拉列表框选定选项后即时转向对应页面的功能。 此种技术适用于网页布局中用户需迅速选取并转向不同页面的情形,诸如网站导航栏或内容目录等场景。 达成此功能,能够显著改善用户交互体验,精简用户的操作流程。 我们须熟悉HTML里的`<select>`组件,该组件用于构建一个选择列表。 用户可从中选定一项,并可引发一个事件来响应用户的这一选择动作。 在本次实例中,我们借助`onchange`事件监听器来实现当用户在下拉列表框中选定某个选项时,页面能自动转向该选项关联的链接地址。 JavaScript里的`window.location`属性旨在获取或设定浏览器当前载入页面的网址,通过变更该属性的值,能够实现页面的转向。 在本次实例的实现方案里,运用了`eval()`函数来动态执行字符串表达式,这在现代的JavaScript开发实践中通常不被推荐使用,因为它可能诱发安全问题及难以排错的错误。 然而,为了本例的简化展示,我们暂时搁置这一问题,因为在更复杂的实际应用中,可选用其他方法,例如ES6中的模板字符串或其他函数来安全地构建执行字符串。 具体到本例的代码实现,`MM_jumpMenu`函数负责处理转向逻辑。 它接收三个参数:`targ`、`selObj``restore`。 其中`targ`代表要转向的页面,`selObj`是触发事件的下拉列表框对象,`restore`是标志位,用以指示是否需在转向后将下拉列表框的选项恢复至默认的提示项。 函数的实现通过获取`selObj`中当前选定的`selectedIndex`对应的`value`属性值,并将其赋予`...
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值