我是一名 Java 软件开发人员/架构师,我喜欢 UML。
说我也讨厌java生成的代码。
我没有看到任何试图生成我的应用程序框架的价值:
- 创建空类真的很容易,我不需要工具来做到这一点
- 我也不能重用生成的代码,因为它的生成方式使得它无法重用
对我来说,困境是我的需求变化如此之快,以至于我需要能够立即将新需求实现到现有代码中。
我的问题是,如果我从模型生成代码,然后在生成的代码库中手动开发,我无法再次使用模型生成代码,因为我的修改将被删除。
除了我来回复制/粘贴更改。对于太少的结果,这是一项巨大的努力。因此我不使用 MDD,但仍然使用很多 UML。
UML 能否在没有 MDD 代码生成的项目中取得成功?
我问这个问题是因为我有一个新老板想用 IBM RSA 引入完整的 MDD 流程,而今天我更喜欢实时代码和模型同步或与 Omondo 合并。
- 为什么要更改正在运行且经过验证的系统?
- 为什么系统地从模型生成代码,而我可以直接在代码中生成代码,然后再将其与模型合并?
- 为什么要生成甚至无法部署的废话数据库代码,而我可以添加构造型以获取java注释并将它们与hibernate一起使用来生成我的数据库?
老板改变的原因之一是为了获得更好的 HTML 格式的项目文档。我非常怀疑这一点,并认为他正在寻找对交付的更多控制,并且不知道还能发明什么!
其他争论的原因:
- 使用大型稳定公司的产品。
- 有一个可用的完整模型,可以用任何其他语言部署。
(这就是为什么对我来说 MDD 是愚蠢的,因为不可能在任何平台上部署任何服务器、任何数据库,只是从一个模型。那为什么要浪费我的时间呢?)
请给我一些论据,以便在下次会议上回来,让这个想要重新组织我们今天工作方式的愚蠢的新 MDD 粉丝崩溃!