本文主要是介绍未来十年的软件研发:潘加宇谈领域建模变得尤为重要 抽象级别不断提升,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
记者 / 付江
领域建模变得尤为重要 未来,软件公司将越来越专注于一个领域,甚至逐渐成为行业组织里的一个部门。这就要求软件要在深度上进一步挖掘,如果不能够高效地整理核心域的知识(也就是核心竞争力),只会象狗熊掰棒子,掰一个丢一个。一款软件的内部涉及到多个 领域的知识,对某个特定组织来说,这些知识的稳定性是不一样的,见下图:
越来越多的平台也对领域建模提出了更高的要求。如果要做一个像《植物大战僵尸》那样的游戏,开发团队可能需要用C#/WinForm做一个 Windows的, Objective-C做一个iPhone/iPad的,JavaScript做一个网页的,Python/GTK做一个 Linux的……如果领域逻辑不能清晰整理,而是散落在各个地方,开发和维护就相当艰难。
抽象级别的提升 市场竞争使得软件的复杂度不断增加,而我们用来开发软件的最终依靠的是人脑,容量和处理速度是有限的,无法换CPU,加内存。只能把人脑需要直接编辑的介质(即所谓源代码)的抽象程度再提升,使人脑越来越集中于只有人脑才能做的事情,计算机能做的事情尽量交给计算机去做。这几十年“源代码”的变化就体现了这个趋势,最开始,“源代码”是机器语言,后来变成汇编语言、高级语言、面向对象语言……下一步的抽象是什么?目前的编码过程中,有些代码成分并不需要人脑的思考,如果这一部分能用机器取代,软件公司可以省下很多人力物力,这也是模型驱动开发的吸引力所在。核心域和非核心域之间的映射规律即使不能完全通过器来封装,也可以通过编写适合项目特点的映射案例,由开发人员举一反三,按照既定套路来映射,也减少了在不必要的细节上浪费的时间。 不管如何,软件复杂度(或者说,参加市场竞争所需要的复杂度)还是会走在开发工具和方法的前面,“没有银弹”依然成立。所幸的是,我们也不需要银弹,因为敌人不是人狼,而是对面街上的竞争对手。
《程序员》12期精彩内容:十年
《程序员》杂志订阅
这篇关于未来十年的软件研发:潘加宇谈领域建模变得尤为重要 抽象级别不断提升的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!