|
锁定老贴子 主题:向MDA开炮:MDA,牛皮还是银弹
该帖已经被评为精华帖
|
|
|---|---|
| 作者 | 正文 |
|
时间:2004-01-13
OMG推出了UML2.0,以支持MDA的开发。并号称MDA不再需要编码
这是一个牛皮还是银弹,现在也许言之尚早,毕竟实践是检验真理的唯一标准。不过,论坛的好处就是畅所欲言,不必负责,说错了也不丢人:) 欢迎各位高手参与讨论,小弟抛砖引玉了! 声明:JavaEye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
|
|
| 返回顶楼 | |
|
时间:2004-01-13
我对 MDA 了解得不多,其实我们更看好人工智能这个领域,这个领域的理论要不了多久就可以成熟了,“银弹”更有可能在这个领域出现。
自动生成代码的 CASE 工具很多年前我在做电信协议的时候就用过(SDT,瑞典 Telelogic 公司的产品,现在名叫 Tau SDL Suite)。电信协议比较容易抽象为有限状态机,所以比较适合 CASE 工具发挥作用。但是商业系统由于业务千变万化,所以这方面的代码自动生成工具一直不够成熟。 以前 M$ 以生产 vaporware 著称,这个 MDA 是不是另一个 vaporware 呢? 论坛还有一个自净的作用。只要大家都本着尊重事实、就事论事的原则来讨论,不做人身攻击(这是我们这里坚决反对的),随着讨论的展开,荒谬的观点那怕伪装得再好,也可以得到澄清,所以不必害怕提出错误的观点。 |
|
| 返回顶楼 | |
|
时间:2004-01-13
关于MDA的文章http://www.csdn.net/subject/320/
MDA是用形式化语言表述现实世界的问题,并将之建模。这样计算机就可以看懂了。不过我对形式化语言描述能力有怀疑:现实世界中存在的问题是复杂的数学模型,这么复杂的数学模型,难道真的可以用固定的公式表达吗? |
|
| 返回顶楼 | |
|
时间:2004-01-13
csdn的文章不太好,看这个吧http://www.mdasky.com/
|
|
| 返回顶楼 | |
|
时间:2004-01-13
不过 MDA 如果真的能做到,解决的确实是软件开发的核心问题,那时候我们就可以站在很高的层次思考软件开发的问题了。
就现在而言,MDA 还是一种理论,甚至没有成熟的产品出现,所以就象 AOP,现在谈拥抱 MDA 还为时过早。 |
|
| 返回顶楼 | |
|
时间:2004-01-14
如果MDA真的能够实现,那对整个软件的发展来说肯定是一个非常大的跳跃,但估计很多人要丢饭碗。当然也迫使我们转为一个架构设计师,所以在还没有发展成熟之前我们尽快成长为一个架构设计师吧。
|
|
| 返回顶楼 | |
|
时间:2004-03-02
孤魂一笑 写道 如果MDA真的能够实现,那对整个软件的发展来说肯定是一个非常大的跳跃,但估计很多人要丢饭碗。当然也迫使我们转为一个架构设计师,所以在还没有发展成熟之前我们尽快成长为一个架构设计师吧。
跳跃个鬼,如果MDA的形式语言能够与Java和C#互相转化,那么不过是与Java和C#等价的另外一种语言而已。真正的"MDA"可以看看csdn前几天报道的无代码开发的.Net工具,以及AdventNet.永远不要寄希望于一个技术能让自己成为架构设计师,当然自封的除外。 |
|
| 返回顶楼 | |
|
时间:2004-03-03
只相信累积,不相信跳跃
|
|
| 返回顶楼 | |
|
时间:2004-03-08
《程序员》今年第2期抄了很多mda文章,强烈关注,否则uml永远是设计分解的鸡肋
|
|
| 返回顶楼 | |
|
时间:2004-03-15
MDA的核心论点是抽象层次提高,能够带来.......
但是软件开发的本质是什么呢? ---是翻译! 将有歧义的自然语言,翻译为无歧义的机器语言。 这里说的机器语言,是泛指所有能被机器理解的语言。 软件开发的最难的部分,就是消除对于软件的需求的歧义。 基本上,所有的语言,最后都是一系列指令,告诉计算机,做这个,做那个,如果条件成立,做这个,否则做那个。 不同的语言,区别在哪里呢? --世界观 你如何看待你要操作的电脑,面向过程的看法,很贴近机器,面向对象的看法,很贴近真实的世界。 MDA呢?很贴近专家的梦想。 不同的世界观,为什么会带来不同的开发效率,不是因为抽象层次的提升,而是因为简化了常用的功能。 举个例子: 最早的机器,屏幕上的每一个点都要自己控制,显示一个字母,也很费力。后来出现了print函数, 可以直接打印字母,这样的功能当然方便,但是它简化了常用的功能,并不等于能实现当初一点一点 控制的方式能够达到的所有功能。如果要实现一点一点控制的方式的所有功能,一个print是远远不够的。 还需要很多很多的其他函数。 再举个例子: 在没有出现数据库之前,保存各种数据,都要对自定义的各种格式的文件进行操作。但是出现了数据库和SQL以后, 大多数的任务都变得很简单,但是真的要实现现实世界中各种数据存储需求,数据库的设计、使用,就成了专门的 学问。 MDA当然能够代给我们不同的“世界观”,但是这样的世界观能不能简化我们的劳动呢?不能! 当然,如果我们要做的项目,正好和MDA软件中给出的example一样,那一切都会变得很愉快。 |
|
| 返回顶楼 | |












