NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

过去十年值得关注的十大技术事件

  • 2010-03-09
  • 本文字数:1214 字

    阅读完需:约 4 分钟

SD Times 网站最近发布了一篇介绍“过去十年十大技术事件”的文章,列举了包括 Ant、.NET、虚拟化、Spring 框架、Ruby on Rails、J2SE 5.0、Git、jQuery、Groovy 和 iPhone 在内的十个有代表性的技术。

在 2000 年 Ant 诞生之前,Java 开发人员每天都要忙于琐碎的构建任务,他们每天也都在畅想如果有个工具能自动帮助他们完成这些工作那该多好啊。Ant 的发布可以说解脱了 Java 程序员。虽然有很多可以和 Ant 相媲美的 Build 工具,如 Make、Gnumake、Nmake 等,但至今为止 Ant 还是以其跨平台的特性成为 Java 程序员工具箱里必不可少的利器。作者 Andrew Binstock 首先选择了 Ant。排在第二位的是 2000 年微软发布的.NET,Andrew 解释说:

微软发布.NET 是公司对 Java 的反击,它表明雷德蒙德依然有能力跟上当前的技术趋势,并进而领导新的方向。虽然.NET 移植性一般,但是它够快,也支持多语言交互。更重要的是,随着.NET 一起发布的 C#语言,不仅具有 Java 最好的语法特性,还增加了许多有用的创新。因为.NET 的发布,微软在软件开发历史上书写了全新而非常成功的一页。

在这十大技术事件中,除了.NET、Ruby on Rails 和 iPhone,其他多少都和 Java 技术相关,想必又有许多人为 Sun 的被收购而可惜了。在提到 2004 年发布的 Ruby on Rails 时,Andrew 评价说:

RoR 完成了对“惯例优于配置”这一思想的彻底实现,它提供了一个工具集合,使得构建可用的站点更加便捷。它集成了 Spring 以开发人员为中心的优良品德,却移除了那些企业级特性,并引入了一门并不大众的语言。在这个过程中,Ruby 因 RoR 而风云再起,并向技术社区展示了快速应用开发(RAD)并不意味着“快,但脏”,而是快,优雅和可靠。

iPhone 能够被列举其中,其很大的原因是因为它的出现变革了移动开发的格局和思想,正如 Andrew 所说,在 iPhone 出现之前,手机和手持设备上的应用都小且没有创意,比如日历、地址簿、MP3 播放器、普通的游戏等。苹果 iPhone 的发布完全颠覆了这一印象,并催生了数以千计的应用,从小儿科的,到富有想象力的,到有实用价值的,一应俱全。苹果的 iPhone 和 Google 的 Android 一起向世人证明,移动开发已经是软件市场中完整且仍在快速进化的一部分。

Andrew 对其他几个入围的技术也进行了简要评价,比如说 Spring 是 Java 领域以简易开发为思想的第一个成功的 Web 框架,比如是 Java 5 的出现才让 Java 真正被人接受,比如所有 Ajax 开发者都受过 JavaScript 的苦却也都认为就 jQuery 的伟大,比如 Groovy 的横空出世让人们看到在 JVM 之上还可以运行脚本语言等等。

也许因为春节的原因,国内并没有多少社区关注这个事件,另外无论以什么样的标准去从过去十年挑选出十个有代表性的事件,总会引起争论。Andrew 一文的价值在于通过这些事件,对过去十年的软件研发历史做了简要梳理。以史为鉴,可以照未来,我们也期待下一个十年有更多技术彻底影响我们的研发领域。其实这已经开始了,比如云计算,比如 REST,比如 RIA 等。

2010-03-09 01:124024

评论

发布
暂无评论
发现更多内容

力扣15 - 三数之和【奇妙的双指针】

Fire_Shield

双指针 LeetCode 9月月更

2022-09-11:arr是一个可能包含重复元素的整数数组,我们将这个数组分割成几个“块”, 并将这些块分别进行排序。之后再连接起来,使得连接的结果和按升序排序后的原数组相同。 我们最多能将数组分成

福大大架构师每日一题

算法 rust 福大大

Spring @PostMapping 能在 URL 中带有参数吗

HoneyMoose

在线编码、格式转换

人生如梦

React 在线格式化 在线编码 转码工具

如何刻意练习-中秋读书随笔

刘旭东

刻意练习

【iOS逆向】某不知名App越狱检测

小陈

iOS逆向

【C语言深度剖析】深入理解字符数组和字符串数组

Albert Edison

C语言 9月月更 strlen 字符数组 字符串数组

LeetCode-454. 四数相加 II(Java)

bug菌

9月日更 Leet Code 9月月更

Python 教程之变量(2)—— Python中整数的最大可能值是多少?

海拥(haiyong.site)

Python 9月月更

TCP/IP参考模型

StackOverflow

编程 计算机网络 9月月更

【Nacos云原生】阅读源码第一步,本地启动Nacos

石臻臻的杂货铺

云原生 nacos 9月月更

VUE v-for 数据引用

HoneyMoose

DevOps实践中的“道法术器”

阿泽🧸

DevOps 9月月更

5分钟教你如何利用华为云IoT进行物联网设备上云

wljslmz

物联网 IoT 华为云 9月月更

VUE v-for 循环的 2 个使用

HoneyMoose

许世伟老师架构课笔记分享

AiDaddy

架构师 需求设计

关于 SAP UI5 所有控件的共同祖先 - sap.ui.base.ManagedObject

Jerry Wang

SAP Fiori SAP UI5 ui5 9月月更

架构师的十八般武艺:架构边界

agnostic

架构边界

ATDD的小妙用

Bruce Talk

敏捷开发 随笔 Agile

Python 教程之变量(3)—— 全局变量和局部变量

海拥(haiyong.site)

Python 9月月更

开始思考吧

吴京

学习 思考 思想

为什么需要微服务

穿过生命散发芬芳

微服务 9月月更

redis 作为缓存时存在的问题

想要飞的猪

redis 淘汰策略 redis缓存过期

库调多了,都忘了最基础的概念-《死锁与范式的碰撞》

知识浅谈

死锁 范式 9月月更

LeetCode-164. 最大间距(Java)

bug菌

9月日更 Leet Code 9月月更

算法基础(一)| 快速排序和归并排序详解

timerring

算法 9月月更

AQS 阻塞队列机制源码分享

new life

AQS

B-Tree索引

急需上岸的小谢

9月月更

阻碍【程序员职业发展】的 5 个“绊脚石”

掘金安东尼

程序员 前端 9月月更

Qt实现文本编辑器(一)

中国好公民st

c++ qt 9月月更

AQS 条件队列机制源码分享

new life

AQS

过去十年值得关注的十大技术事件_Java_霍太稳@极客邦科技_InfoQ精选文章