cal*_*ium 12 ruby uml ruby-on-rails
我总是听说过在Java项目中使用UML但从未在Ruby项目中使用过.这只是一种文化差异,还是在Ruby开发中对建模的需求较少,因为它是更"敏捷"文化的一部分?
Chu*_*uck 36
显然你不能将它概括为每个人,但是像Ruby和Python这样的语言的程序员往往不太习惯大型设计文档和UML,因为他们认为他们选择的语言简洁而富有表现力,并不总是必要的.有一种感觉,"我可以花时间在UML中绘制所有这些...或者我可以编写一些实际实现设计的Python,并用我喜欢阅读的语言表达它,很多人都可以阅读." Java程序往往比Ruby或Python程序感觉"更重" - 它是语言设计的一部分.
请注意,我并不是说这对你的项目是正确的,甚至不是说整个都是如此 - 这正是我对这些编程文化所观察到的.
Ada*_*nco 14
(注意,舌头有时放在脸颊上.)
可能最大的文化差异之一是Java经常用于拥有大量程序员的项目,由PHB领导,其中高级系统设计由标题为"软件架构师"的人员完成.在这类项目中,"软件架构师"角色中的人员通常会在项目的初始规划阶段生成大量文档(包括UML关系和状态图).然后,这些和其他文档工件预计将由大量非架构师程序员实现.
另一方面,Ruby是新的热点,因此更常被想要在其中编程的人选择.由于"架构师"是实施者,因此对复杂的前期文档的需求较少.实施者会记下关于一般设计指南的一些注释,然后坐下来编程而不是为其他人预先设计编程.
这并不是说你不会在用Ruby或其他时髦语言构建的项目中找到一些分散的UML图 - 比如当有人试图描述一个复杂的概念时 - 但这样的事情只是'如果你自己做这项工作,那就需要多少钱.
其中一个显而易见的原因是精心设计的Ruby程序严重依赖于Mixins,而AFAIK根本无法用UML建模.我知道Schärli等人开发了UML的扩展,它可以代表Traits,它可以调整Traits和Mixins之间的密切关系,或者只是重复用于表示Mixins,但是它不再是UML了.
归档时间: |
|
查看次数: |
2626 次 |
最近记录: |