社区
研发管理
帖子详情
如何确定类?
hiheiheicdn
2008-09-15 10:34:42
在面向对象的分析设计中,常根据用例图确定类,但是书上写的一些方法:名词、动词法;CRC方法在具体实施过程中效果不是很好。
不知各位在实际开发中是如何处理这一问题的。
谢谢
...全文
194
14
打赏
收藏
如何确定类?
在面向对象的分析设计中,常根据用例图确定类,但是书上写的一些方法:名词、动词法;CRC方法在具体实施过程中效果不是很好。 不知各位在实际开发中是如何处理这一问题的。 谢谢
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
14 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Fusuli
2008-09-25
打赏
举报
回复
楼上说的很对,我就是想说分析设计的时候要多方面考虑,不是简单的找名词动词的考虑。
从顾客到收银台结账这个场景来说,牵扯到的名词、业务可以复杂到无法想象。
所以首先你要确定这次业务的主体是什么,主体的目标是什么,而这个主体第一是分层次,第二是多个而不是一个主体。
拿这个例子来说,主体就有商场、业务员、仓库、顾客、甚至银行,如果是沃尔玛,甚至还有生产厂家、物流、总公司等等,主体的层次就有公司、部门、业务员
谜斯特段
2008-09-25
打赏
举报
回复
楼上的这个例子应该是系统边界外的,可能一个类也提不出来,顾客可能是这个类,但只是可能,如果这个系统是给超市做的,根据实际情况,超市不可能把用户保存的。但如果是其它应用系统,客户就可能是一个类。
另外,结帐其实应该是一个用例,应该有更详细的描述,在这个用例的描述中,我想应该可以提取出不少的类。
hiheiheicdn
2008-09-25
打赏
举报
回复
通过这几天的摸索,我发现实体类比较好找,因为实体类基本上和业务中需要处理的数据(数据库中的表)相对应
但是,控制类就不好确定拉。
另外,把类抽象出来以后,在具体编程实现的时候应该注意哪些问题?
面向对象的优点又体现在什么地方?
因为如果是第一次接触面向对象分析和设计的话,很难体会到他的好处
Fusuli
2008-09-24
打赏
举报
回复
找名词或动词也不简单,举个简单的例子,顾客到收银台结账,这个过程有多少个名词和动词大家可以分析一下
谜斯特段
2008-09-23
打赏
举报
回复
[Quote=引用 8 楼 Fusuli 的回复:]
引用 7 楼 liandti 的回复:
名词法不好吗?我觉得就不错啊。
光用名词法并不完善,要结合动词法和其他方法综合考虑
[/Quote]
其实有了名词之后,其它就靠自己的经验了,动词我认为通常的是类的方法,而确定了类之后才能确定方法,OOA的过程通常是粗略的,OOD才是详细的。
rainbowbaby
2008-09-22
打赏
举报
回复
那请教具体的有哪些方法呢?
大家在公司做开发的时候都大多集中采用哪些方法?
谢谢~~
Fusuli
2008-09-22
打赏
举报
回复
[Quote=引用 7 楼 liandti 的回复:]
名词法不好吗?我觉得就不错啊。
[/Quote]
光用名词法并不完善,要结合动词法和其他方法综合考虑
谜斯特段
2008-09-22
打赏
举报
回复
名词法不好吗?我觉得就不错啊。
jdlsfl
2008-09-19
打赏
举报
回复
[Quote=引用 5 楼 simonezhlx 的回复:]
要学会抽象实体,OO就是要求我们在设计类时就要联系到现实世界
[/Quote]
up
simonezhlx
2008-09-18
打赏
举报
回复
要学会抽象实体,OO就是要求我们在设计类时就要联系到现实世界
cmm2cmmi
2008-09-18
打赏
举报
回复
[Quote=引用楼主 hiheiheicdn 的帖子:]
在面向对象的分析设计中,常根据用例图确定类,但是书上写的一些方法:名词、动词法;CRC方法在具体实施过程中效果不是很好。
不知各位在实际开发中是如何处理这一问题的。
谢谢
[/Quote]
个人觉得不是效果不好,而是你练的少了
最好找公司的前辈指点一下
祝你成功
rainbowbaby
2008-09-17
打赏
举报
回复
人家问的是实际经验,具体的,不是抽象的。
lixiaolu1980
2008-09-15
打赏
举报
回复
共同关注
青润
2008-09-15
打赏
举报
回复
建议你去看看我的那本书,软件工程之全程建模实现,上面有详细的步骤和操作方法,如何从需求的分析到分析模型中的分析类,从分析类如何到设计类。
计算机网络期末复习:覆盖基础概念、核心技术与应用领域的全面总结
4.IP地址分为哪几
类
?每种单播地址对应的默认子网掩码是什么? 5.从网络作用范围来看,如何给计算机网络来分
类
?有哪几
类
? 6.时延分为哪几种?发送时延如何计算?传播时延怎么计算? 7.利用什么命令可以测试远端...
人工智能习题
里面习题不错哦,欢迎下载,对你有帮助, 什么是不
确定
推理? 说明主观Bayes方法中LS,LN的意义。 单调推理有何局限性?... 人工神经网络有那几
类
? 递归网络(反馈网络) 多个神经元互连构成互连神经网络
不
确定
非线性系统的模糊鲁棒??
针对一
类
不
确定
非线性系统, 提出一种新的模糊鲁棒??∞ 跟踪控制方案. 应用模糊T-S 模型表征非线性系统, 系统不
确定
性通过模糊逻辑系统消除. 由线性矩阵不等式和自适应律给出了模糊控制器存在的一个充分条件. 基于...
详谈Java中的Object、T(泛型)、?区别
Object 是 Java 中的根
类
,所有 Java
类
都继承自 Object
类
。因此,Object
类
的范围非常广泛,它可以是任何
类
型的对象,包括基本数据
类
型、数组、集合等。Object
类
提供了一些基本的方法,如 equals()、hashCode()、...
74个java面试题,只有题目没有答案
* Java 中什么是匿名内部
类
?匿名内部
类
是一种匿名的
类
,定义在方法内部。 48. Java 重载和重写 * Java 中什么是重载和重写?重载是指多个方法同名但参数不同,重写是指子
类
继承父
类
的方法。 49. Java hashCode ...
研发管理
1,268
社区成员
28,284
社区内容
发帖
与我相关
我的任务
研发管理
软件工程/管理 管理版
复制链接
扫一扫
分享
社区描述
软件工程/管理 管理版
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章