连载:面向对象葵花宝典:思想、技巧与实践(24) - 设计模型

简介:

完成领域类到软件类的转换,这就是面向对象领域设计阶段的主要任务


经过领域模型的分析后,面向对象已经初具雏形,但领域类并不能指导我们进行编码工作,因为领域类只是从用例模型中提炼出来的反应业务领域的概念,而并不是真正意义上的软件类。

 

“革命尚未成功,同志还需努力”,我们需要再进一步,完成领域类到软件类的转换,这就是面向对象领域设计阶段的主要任务。

 

设计阶段是整个面向对象分析和设计的高潮阶段。在设计阶段中,我们将要输出设计模型,并且需要综合各种方法、技巧,运用十八般武艺,使出浑身解数,以求能够设计出满足各种需要的设计方案。

 

这也是最考验设计师功力的时候,因为设计并没有一个量化的标准,也没有一个标准答案,更多的时候需要设计师综合知识、技能、经验、灵感等因素,综合权衡而得出一个方案。世界上找不到两片相同的叶子,同样,你也找不到两个完全一样的设计方案。毫不夸张的说,面向对象的设计更多时候是一项艺术

 

虽然我们说面向对象设计是一门艺术,但这并不意味着只有天才才能进行面向对象设计,面向对象设计也是有一定的规律和方法可寻的,我们将在接下来的章节逐一介绍。

 

【设计模型总览】

设计模型主要包含2部分内容:静态模型、动态模型,任何一个模型的缺失或者不完善,都将导致最终的设计质量不高,甚至可能导致最终的系统没有实现业务需求。

 

静态模型又可以称为“类模型”,主要关注系统的“静态”结构,描述了系统包含的类, 以及类的名称、职责、属性、方法,类与类之间的关系。

动态模型关注系统的“动态”行为,描述类本身的一些动作或者状态变化,以及类之间如何配合以完成最终的业务功能。只有结合静态模型和动态模型,我们才能够真正的将一个系统描述清楚。

 

静态模型和动态模型对于后续的编码也具有不同的指导意义。静态模型主要用于指导类的声明,包括类名称,属性名,方法名;而动态模型主要用于指导类的实现,主要就是每个方法内部的具体实现。


================================================ 
转载请注明出处:http://blog.csdn.net/yunhua_lee/article/details/23360877
================================================ 

相关文章
|
存储 自然语言处理 数据安全/隐私保护
微信公众号后台回复5s重试解决方案和思路
微信公众号后台回复5s重试解决方案和思路
904 0
|
存储 消息中间件 NoSQL
深入了解Redis:高性能的内存数据库
深入了解Redis:高性能的内存数据库
|
Java
DecimalFormat的使用讲解数字格式化和demo(java小数控制,金额返回相关处理)
DecimalFormat的使用讲解数字格式化和demo(java小数控制,金额返回相关处理)
501 0
|
自动驾驶 安全 物联网
2G、3G、4G与5G技术:主要区别详解
2G、3G、4G与5G技术:主要区别详解
7369 14
|
运维 网络协议 Shell
第十七章 Python网络编程
第十七章 Python网络编程
|
存储 PHP
PHP快速入门02-PHP语言基础
万丈高楼平地起,本节内容将带大家一起了解PHP的数据类型,常量与变量,条件语句,循环语句,对象数组,函数与命名空间等相关知识。
184 1
|
存储 编解码 网络协议
网络基础认识(一)
网络基础认识
262 0
数据结构之顺序表详解(二)
今天给大家带来的是数据结构的顺序表结构,以及与其的有关功能的实现,在数据结构的这部分内容,可能有些知识点有点难以理解,在需要时小编会配合图画,让大家能够更好的理解,那么下面就让我们直接步入正题吧。
759 0
|
弹性计算 Linux 网络安全
CentOS cockpit网页图形化界面查看服务器信息
CentOS cockpit网页图形化界面查看服务器信息
747 0
CentOS cockpit网页图形化界面查看服务器信息
|
安全 Java 数据库连接
前后端分离智能停车场系统项目,报错解决
> Failed to load resource: net::ERR_CONNECTION_REFUSED > Access toXMLHttpRequest at 'http://localhost:8080/user/login' from origin > 'http://localhost:9999' has been blocked by CORS policy: No > 'Access-Control-Allow-Origin' header is present on the requested > resource. >
723 0
前后端分离智能停车场系统项目,报错解决