头脑风暴--“MDA使你面临重大选择”的热烈大讨论

MDA真的会使程序员大量失业嘛?请大家参与这个讨论

MDA大讨论

头脑风暴--“MDA使你面临重大选择”的热烈大讨论

MDA真的会使程序员大量失业嘛?请大家参与这个讨论

MDA大讨论

模型驱动软件架构网 - mdasky

工具固然重要,但软件开发的决定性因素还是人

mda是否炒的过火了

我认为只有最挫的人才会被淘汰!

10年之内,MDA根本没有实用价值。

不好意思,什么是MDA

任何事物的出现都有它的道理,一定有它的生存环境,但不可能一种事物的出现会抹杀其它事物的存在,就像老虎存在,它很凶猛,那么斑马等动物就不应该存在吗
所以出现任何东西只要留意它的发展势态,无须紧张
~_~

不会让程序员事业,程序员就要做mda的工具

MDA的核心论点是抽象层次提高,能够带来.......

但是软件开发的本质是什么呢?

---是翻译!
将有歧义的自然语言,翻译为无歧义的机器语言。
这里说的机器语言,是泛指所有能被机器理解的语言。

软件开发的最难的部分,就是消除对于软件的需求的歧义。

――――――――――――――
再加一段
消除歧义,消除模糊,不是什么高级工具的任务,而是人的任务!
这个任务,没有任何机器能够代替。哪怕是最聪明的人,也不得不借助快速原型法,来确认真正的需求。
――――――――――――――

基本上,所有的语言,最后都是一系列指令,告诉计算机,做这个,做那个,如果条件成立,做这个,否则做那个。

不同的语言,区别在哪里呢?
--世界观
你如何看待你要操作的电脑,面向过程的看法,很贴近机器,面向对象的看法,很贴近真实的世界。

MDA呢?很贴近专家的梦想。

不同的世界观,为什么会带来不同的开发效率,不是因为抽象层次的提升,而是因为简化了常用的功能。

举个例子:
最早的机器,屏幕上的每一个点都要自己控制,显示一个字母,也很费力。后来出现了print函数,
可以直接打印字母,这样的功能当然方便,但是它简化了常用的功能,并不等于能实现当初一点一点
控制的方式能够达到的所有功能。如果要实现一点一点控制的方式的所有功能,一个print是远远不够的。
还需要很多很多的其他函数。

再举个例子:
在没有出现数据库之前,保存各种数据,都要对自定义的各种格式的文件进行操作。但是出现了数据库和SQL以后,
大多数的任务都变得很简单,但是真的要实现现实世界中各种数据存储需求,数据库的设计、使用,就成了专门的
学问。

MDA当然能够代给我们不同的“世界观”,但是这样的世界观能不能简化我们的劳动呢?不能!
当然,如果我们要做的项目,正好和MDA软件中给出的example一样,那一切都会变得很愉快。

――――――――――――
再加一段
将软件开发与建筑工程进行简单类比,现在看来,越来越成为一种“陷阱”。这样的类比,可能会得出对于软件开发实质上有害的方法论。

因为软件是可以修改的,而建筑是很难拆除重建的。

修改,不断的修改,是软件开发的常态。
不承认这个事实,就会违反软件开发的本质。
――――――――――――

其实工具真的不重要,重要的是思想,经验。

工具只可以加速执行老板的想法,而执行的还是程序员,只是,程序员又要学一种新技术了。