解读软件2.0思想框架 把握技术发展趋势

转载 2007年09月28日 10:36:00

2007.09.25  来自:《程序员》杂志   孟岩   共有评论(12)条 发表评论   [收藏到我的网摘]

例如,在软件设计领域,UML力图成为表达软件设计的统一语言,而更高级的软件建模工具如MDA、DSL等技术也在积极进展当中,这将根本上改变人们表达软件设计的方式;Web和SOA对于开发效率、灵活性和软件质量的诉求,恰


软件开发与人类做过的任何其他工作都不一样。其他的工作都是思维为工具,以客观世界为目标,而软件却要求人类以计算机为工具来探究我们自己的思维。一方面,人们对这样的事情还很缺乏经验,另一方面,软件的规模越来越大,应用越来越广,在现代社会中扮演的角色越来越重要,因此,我们就必须不断地加深对软件的认识,并革新软件开发的思想和实践。近五十年来,软件技术的革新每天都在进行,然而,目前的技术发展却呈现出前所未有的局面。

自2002年至今,软件技术各个领域中的演化、进步和革新越来越频繁,越来越激烈。这些新技术、新方法每一项单独去看都意义重大,都是对过去50年软件开发传统的变革甚至革命。例如,在软件设计领域,UML力图成为表达软件设计的统一语言,而更高级的软件建模工具如MDA、DSL等技术也在积极进展当中,这将根本上改变人们表达软件设计的方式;与之相对,XML正在成为纵跨数据层、逻辑层和通信层的统一数据模型,根本上改变人们表达数据的方式;用户界面技术进入到新时期,大量的三维动画效果的运用使得用户体验达到之前难以想象的水平,而RIA的出现则综合了浏览器与普通客户端应用程序的最佳特性,找到了人们长期以来梦寐以求的平衡点;各主流语言都在积极加强自身的动态性,从而使数据与代码之间的界限变得越来越模糊;移动设备和无线网络技术的发展将计算能力满布在地球的各个角落,使得分布式计算成为常态;而多核CPU的主流化也给传统的串行化程序设计时代画上了句号,其影响之巨大可谓数十年一遇。

Web正在成为唯一真正的统一软件平台,这有可能一举结束长达数十年的平台割据分裂各自为站的局面;而SOA的目标在于调整业务与IT的关系,承诺让IT与业务齐合,实现灵活应变的业务,这更是企业IT领域里的一个根本性变革;在基础计算环境领域,多核与超大规模服务器集群的出现,使得对于并行计算的要求变得空前迫切,从而也直接地将函数式编程语言从实验室推向前台,并且进而要求硬件和网络基础设施的重大变革。这么多重大的技术变革竟然在几乎同时发生,自1960年代以来还是第一次。

然而更有趣的是,稍微深入地研究之后我们发现,所有这些看上去分散的、孤立的技术变革,事实上确实互相密切关联着。Web正在成为统一的、面向服务的分布式计算平台,从而为在企业内和企业间实施SOA建立了基础设施。数据模型向XML的统一,不但将Web更好地整合起来,而且为SOA提供了标准环境,更使不同平台、不同设备的广泛分布式计算协同成为可能。Web和SOA对于开发效率、灵活性和软件质量的诉求,恰好由新的软件过程方法和语言工具来满足。在以互联网为平台的面向服务计算的年代,对单个计算节点的计算能力、规模和节能提出了前所未有的要求,而这一点又由多核CPU、大规模服务器集群和新的并行程序设计语言的发展予以满足。总而言之,所有这一切技术变革,过去在各个领域里遵照自己的规律发展着,穿越几十年的时间,却恰好在今天这个时候汇合到一起,彼此互相支持,相互弥补,呈现前所未有的和谐与一致。为什么竟然会这么巧?难道仅仅是巧合吗?或者在这些单独的分散的技术进步背后,有一个尺度更大的,更宏伟的变革?

我们相信是后者,并且将这个更大尺度的技术变革命名为“软件2.0”。我们确信,整体大于部分之和,“软件2.0”是正在发生的技术革命,其意义远远大于任何一个单项的新技术和新方法。从其目的来看,是要以前所未有的力度削除由于技术分裂、历史包袱以及工具和方法的落后,给人们开发和使用软件所带来的不必要的麻烦,从而调整人与软件的关系,重申人在IT时代的主体性地位,让软件更好的为人服务,为商业服务。从长远来看,“软件2.0”将把人类的信息化带上一个全新的境界,从而强烈地塑造人类的文明进程。即使从短期来看,“软件2.0”为理解当今软件新技术和新方法提供了一个整体的思想框架,不但能够帮助我们理解各个领域内的技术进步,而且能够帮助我们洞悉这些新技术、新方法之间的内在联系,从而把握技术发展的趋势和走向。


(点击查看大图)


“软件2.0”是一个历史机遇。CSDN和《程序员》杂志将坚定而积极地完善和宣传“软件2.0”的概念和思想,并将在2007年11月举办的“软件开发2.0技术大会”上,邀请中外技术名流高人,具体而微地阐释“软件2.0”的各个方面。我们也呼吁中国软件开发社群中的有识之士共同努力,把握住这个机遇,,为个人、为企业、进而为整个中国的软件产业带来新的居民。

欲了解在此次大会上的更多动态,请访问2007软件开发2.0大会官方网站   如果您希望更深入了解软件2.0的发展和趋势,请在这里 参会报名

 

解读软件2.0思想框架 把握技术发展趋势

软件开发与人类做过的任何其他工作都不一样。其他的工作都是思维为工具,以客观世界为目标,而软件却要求人类以计算机为工具来探究我们自己的思维。一方面,人们对这样的事情还很缺乏经验,另一方面,软件的规模越来...
  • kybd2006
  • kybd2006
  • 2007年09月25日 18:04
  • 519

2018年开源技术的10大发展趋势

程序猿(ID:imkuqin) 猿妹 编译编译自:https://opensource.com/article/17/11/10-open-source-technology-trends-2018技...
  • UzV80PX5V412NE
  • UzV80PX5V412NE
  • 2017年12月31日 00:00
  • 455

也谈对组件化软件开发的几点看法,欢迎大家发表自己的见解

最近看到网上很多关于基于组件或者控件开发的讨论。我想谈谈自己的想法仅供大家参考:首先应该说纯软件开发而言过去的典型模式就是垂直型的,这类模式就是开发队伍全权负责某个软件各个功能的实现。他们负责某个软件...
  • Componentchina
  • Componentchina
  • 2005年04月08日 11:44
  • 1986

回归技术——我看中国软件的发展方向

中国的政治经济格局正在酝酿着一场变革,而作为高新技术产业的软件行业,必将成为这场变革的先锋队成员。这里我不想对政治经济的变革做什么展望,仅仅对软件行业的未来谈谈自己的看法。当前软件行业人士普遍存在两种...
  • fzd999
  • fzd999
  • 2004年11月07日 15:12
  • 3513

2016中国软件行业发展趋势及网络化发展分析【图】

随着国内现有的技术、网络等条件不断完善,金融、电信、电力、石油、政府等传统上软件行业的重要客户,都走上了数据集中的道路,这使得小的软件企业很难进入并分享这个蛋糕,进入的门槛不仅是技术,更多的是自身条件...
  • justformylife
  • justformylife
  • 2017年03月24日 09:02
  • 449

图像识别技术发展趋势分析

图像技术的应用域极为广泛。下面以其学科分支及应用领域为纲,简述其发展状况及前景。  1。计算机图像生成  以计算机图形学和“视算”为基础的计算机图像生成技术,在21世纪将更加繁荣。在大型飞行、航海仿真...
  • xinzheng_wang
  • xinzheng_wang
  • 2011年04月01日 14:10
  • 2046

Java三大主流框架的技术起源

在Java开发中,我们经常使用Struts、Hibernate和Spring三个主流框架,但你是否知道这三个框架最初是为解决怎样的问题而生的? Struts、Hibernate和Spring是我们J...
  • myflyingangel2016
  • myflyingangel2016
  • 2016年04月14日 21:06
  • 5240

计算机科学与技术的未来发展前景

2015年计算机科学与技术专业就业前景分析:计算机科学与技术,亦即计算机科学与技术专业。下属三个二级学科,本专业培养具有良好的科学素养,系统地、较好地掌握计算机科学与技术包括计算机硬件、软件与应用的基...
  • BGD150809209
  • BGD150809209
  • 2015年12月11日 07:57
  • 1616

JSP技术的发展趋势

JSP技术主要用来简化动态网页的开发过程,由于它在形式上和html文档比较相似,因此与Servlet相比,用JSP来编写动态网页更加直观。 但是,当网页非常复杂时,JSP文件中的大量的html标记和j...
  • confirmAname
  • confirmAname
  • 2013年05月23日 16:41
  • 1539

应用服务器的技术发展趋势

 应用服务器又称为“应用服务器软件平台”(Application Server Software Platform,简称为ASSP),是最重要的一类中间件软件。中间件软件市场的演进,创造了许多种类的中...
  • zaowei21
  • zaowei21
  • 2005年01月12日 18:25
  • 2408
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:解读软件2.0思想框架 把握技术发展趋势
举报原因:
原因补充:

(最多只允许输入30个字)