当前位置:  开发笔记 > 编程语言 > 正文

您如何看待模型驱动的软件开发?

如何解决《您如何看待模型驱动的软件开发?》经验,为你挑选了2个好方法。

我真的很想知道您对Java和/或.NET的模型驱动软件开发的看法.

它能节省时间吗?它是否提高了质量?



1> Mendelt..:

MDA是一个有点过载的概念.有时它意味着将UML或其他类型的图表转换为可执行代码.我现在从未见过这方面的工具.它通常会导致项目真正快速地获得结果,然后造成维护噩梦,因为可用的工具并不真正支持大型团队在视觉图上工作,因为人们开始在图表中工作以及生成的代码.

我看到的东西看起来很像域驱动设计被称为MDA,如果你的意思是我全都是为了它:-)



2> Roland..:

我在IBM Rational Rhapsody for C++的项目中使用MDSD.该模型非常接近UML,因此我们实际上并没有特定于域的语言.但我仍然声称使用MDSD.根据我的经验,MDSD有许多好处:

a)使用MDSD有助于将SW架构带入复杂的层次.你总是在一个非常抽象的层面上工作,思考大局.牛仔编码软件通常缺乏良好的架构,因为开发人员陷入细节.使用MDSD,我看到了我的工作倾向,用适当大小的类,好的模式或简单的代码来解决问题.

b)使用MDSD,SW的大图文档往往更好.当然,有些工具可以自动生成代码中的类图.但是这些图表由1000个类组成,您没有看到感兴趣的方面.使用MDSD,您可以专门绘制系统的一个方面,同样的图也用于生成代码的一部分.

c)建模有助于处理固有的系统复杂性.我想说,如果没有计算机辅助设计的支持,有些系统太复杂了.没有巨大的SW工具的帮助,没有人会设计CPU.使用SW帮助您编写更复杂的SW.

d)使用MDSD有助于遵守编码风格指南.获得一致的代码风格没有比让规则集生成代码更好的方法了.

MDSD当然也有一些缺点:d)如果你有一个模型,你希望每一行代码都来自该模型.并且可能难以将外部库包含到项目中.因此,要么您接受这样的事实,即您的系统基于外部组件,或者您重新发明轮子以使其进入您的模型.

e)使用版本控制工具时,建模工具可能会遇到问题.合并源代码通常比模型图更简单.这迫使团队从复制编辑合并移动到锁定编辑合并工作流程.

推荐阅读
无名有名我无名_593
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有