CRC(类责任协作者)和UML

必杀技

CRC帮助将用例转换为一组类,并找到其职责和合作者。我们可以说CRC是UML建模的一种非正式方法,它基本上是分析系统而不是像UML那样专注于设计吗?看完不同的资源后我不确定。

刚努斯

“我们可以说CRC是UML建模的非正式方法吗?”

  • 没有。马丁·福勒(Martin Fowler)将CRC卡描述为UML序列图的一种可行选择,以设计对象交互和协作的动力学。例如,它并不比UML用例那么抽象。完全不同。

UML试图将结构模型和行为模型彼此分开。相反,CRC会同时考虑类结构及其行为。但是当然,您可以使用UML用例/组件图进行建模,转到CRC并继续到UML类和序列图。这样的翻译肯定会过滤掉您的许多误会和错误。

“它基本上是分析系统,而不是像UML那样专注于设计吗?”

  • 对不起,也没有。两种工具的主要目标都不是分析(在某种意义上,“我们正在分析系统”)。它们都用于建模(通常也称为IT分析)。他们帮助我们思考,想象系统,计划系统,检查我们对系统的想法。

另外,您无法比较CRC和UML,因为它们属于不同级别。就像从一侧比较大象,从另一侧比较海狸的腿一样。CRC是一种比任何UML图都简单得多的方法。而且也远没有任何一个正式。

UML在类图级别上具有非常强大的工具,而在组件图级别上具有很好的工具,没有工具可以从第二个过渡到第一个。CRC对于弥补这一差距可能非常有用。并且也支持时序图。

因此,如果OMG(UML的拥护者)更急于寻找新工具,那么他们将来可能会将CRC作为另一种UML方法。但是我们可以使用它而不必等待正式的认可。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

CRC(类责任协作者)和UML

来自分类Dev

使用Spock和Grails在全局存根类中注入存根协作者

来自分类Dev

限制协作者仅推送到特定分支

来自分类Dev

通过api确定协作者的权限(对组织存储库)?

来自分类Dev

协作者电子邮件邀请的安全性

来自分类Dev

授予协作者运行流星部署的权限

来自分类Dev

协作者电子邮件邀请的安全性

来自分类Dev

每个协作者的文字颜色不同

来自分类Dev

限制协作者仅推送到特定分支

来自分类Dev

如果我使用多个远程存储库(Github 和 BitBucket),其他协作者会知道吗?

来自分类Dev

是否可以在github api上查询用户是协作者的任何存储库?

来自分类Dev

我应该在单元测试中检查协作者的返回值吗?

来自分类Dev

如何在具有多个协作者的环境中使用本地化的PostBuildEvent?

来自分类Dev

实施DDD(红皮书):为什么他使协作者成为价值对象?

来自分类Dev

已成为协作者时向GitHub存储库发送拉取请求

来自分类Dev

如何在Atmosphere中为Meteor软件包添加协作者

来自分类Dev

我的协作者的提交如何找到进入我的分支的方式?

来自分类Dev

当我有多个帐户时,以协作者的身份克隆私人Github存储库

来自分类Dev

在单元测试中,如何确定哪个是SUT,哪个是协作者?

来自分类Dev

仅获取协作者,而不是github存储库ORG的所有者

来自分类Dev

使用github cli将外部协作者添加到组织存储库

来自分类Dev

如何在Github上隐藏我作为协作者的项目?

来自分类Dev

如何在GitHub上使用SSH密钥作为协作者提交?

来自分类Dev

OpenShift应用程序-使用Rhc作为管理员协作者无法查看日志

来自分类Dev

在Cloud9 IDE中进行编码时,如何隐藏协作者的名字?

来自分类Dev

当我有多个帐户时,以协作者的身份克隆私人Github存储库

来自分类Dev

可以添加仅对仓库中特定文件夹进行推送访问的协作者吗?

来自分类Dev

带有Arduino IDE的Nodemcu 1.0,协作者无法编译草图,但我可以

来自分类Dev

如何编写在内部实例化协作者的方法的单元测试?

Related 相关文章

  1. 1

    CRC(类责任协作者)和UML

  2. 2

    使用Spock和Grails在全局存根类中注入存根协作者

  3. 3

    限制协作者仅推送到特定分支

  4. 4

    通过api确定协作者的权限(对组织存储库)?

  5. 5

    协作者电子邮件邀请的安全性

  6. 6

    授予协作者运行流星部署的权限

  7. 7

    协作者电子邮件邀请的安全性

  8. 8

    每个协作者的文字颜色不同

  9. 9

    限制协作者仅推送到特定分支

  10. 10

    如果我使用多个远程存储库(Github 和 BitBucket),其他协作者会知道吗?

  11. 11

    是否可以在github api上查询用户是协作者的任何存储库?

  12. 12

    我应该在单元测试中检查协作者的返回值吗?

  13. 13

    如何在具有多个协作者的环境中使用本地化的PostBuildEvent?

  14. 14

    实施DDD(红皮书):为什么他使协作者成为价值对象?

  15. 15

    已成为协作者时向GitHub存储库发送拉取请求

  16. 16

    如何在Atmosphere中为Meteor软件包添加协作者

  17. 17

    我的协作者的提交如何找到进入我的分支的方式?

  18. 18

    当我有多个帐户时,以协作者的身份克隆私人Github存储库

  19. 19

    在单元测试中,如何确定哪个是SUT,哪个是协作者?

  20. 20

    仅获取协作者,而不是github存储库ORG的所有者

  21. 21

    使用github cli将外部协作者添加到组织存储库

  22. 22

    如何在Github上隐藏我作为协作者的项目?

  23. 23

    如何在GitHub上使用SSH密钥作为协作者提交?

  24. 24

    OpenShift应用程序-使用Rhc作为管理员协作者无法查看日志

  25. 25

    在Cloud9 IDE中进行编码时,如何隐藏协作者的名字?

  26. 26

    当我有多个帐户时,以协作者的身份克隆私人Github存储库

  27. 27

    可以添加仅对仓库中特定文件夹进行推送访问的协作者吗?

  28. 28

    带有Arduino IDE的Nodemcu 1.0,协作者无法编译草图,但我可以

  29. 29

    如何编写在内部实例化协作者的方法的单元测试?

热门标签

归档