写点什么

Yahoo(雅虎)宣布停止开发 YUI

  • 2014-09-04
  • 本文字数:1537 字

    阅读完需:约 5 分钟

Yahoo(雅虎)刚刚宣布今后将不再继续开发开源JavaScript 工具库Yahoo User Interface(YUI)。Yahoo Presentation 的技术工程总监Julien Lecomte 在Yahoo 的官方博客 Yahoo Engineering Tumblr blog 上宣布了这一决定:“我们做出了一个艰难的决定,从现在起停止 YUI 新功能的开发,将研发力量集中在新的技术愿景上”。

从 Julien 的博文中可以看出该决定的端倪,Yahoo 公司之所以做出这个决定是由于近期 JavaScript 语言的激烈变革,以及越来越多的开发者对大型 JavaScript 库的忌惮并失去了兴趣所导致。也正因为这个原因,YUI 的大多数核心模块的活跃维护者已是凤毛麟角,开发者反馈的问题和功能需求也越来越少

2005 年,Thomas Sha 开发了 YUI 并得到了 Yahoo 联合创始人 Jerry Yang 的赞助。2006 年 2 月 YUI 首次对外发布并由 Yahoo 的工程师组建了一支核心团队开始维护 YUI。2009 年 9 月,Yahoo 发布了 YUI 的最新的一个主要版本 YUI3 。从 YUI 到 YUI3 是一个由库到框架的演变过程,YUI3 吸取了 YUI2 开发的经验教训,对当时还是开发库级别的 YUI 从底层进行了重构。在这期间,YUI 有了长远的发展和改进,比如为检索 DOM 元素增加了 CSS 选择器引擎、更加强调模块的粒度、根据开发需求可选择加载最小功能单位的模块、各种语法的改变使开发变得更加方便和快捷等。

YUI 的发展过程中也开创了很多深受 JavaScript 开发者喜爱的技术,比如功能模块化动态加载,它们使模块化开发和依赖管理变得更加容易。然而在过去的几年中,由于 Node.js 的出现使 JavaScript 的开发环境和开发趋势发生了革命性的变化,正如 Julien 在博文中所说:

我们都清楚的知道 IT 产业正朝着新方向发展。众所周知,在过去几年中,Web 平台已经发生了革命性的变化,JavaScript 史无前例的流行。Node.js 的出现让 JavaScript 可以在服务器端使用,为创建同构单页应用(isomorphic single page application)打开了大门。

正如 Julien 所描述的那样,JavaScript 的生态环境随着这些新技术的诞生发生了翻天覆地的变化:

新型包管理器(npm、bower)有效地刺激了第三方生态系统的发展,开源、单一目的的工具相辅相成,遵循着 UNIX 哲学理念,构建出极其复杂的开发用例。新型构建工具(Grunt 和它的插件生态系统、Broccoli、Gulp)使一个个小模块很容易就可以组装成大型的集成应用程序。新型应用框架(Backbone、React、Ember、Polymer、Angular 等)帮助我们用新的方式构建可扩展、可维护的 Web 应用程序。新型测试工具(Mocha、Casper、Karma 等)降低了持续保证产出物高可靠、高稳定性的技术难度。标准机构(W3C、Ecma)将近几年已被大家熟知的大型 JacaScript 框架内容进行标准化,使它们可以原生的兼容大量的设备。最后,浏览器厂商现在也都致力于不断改进其 Web 浏览器,逐渐向标准看齐。为了让用户在不知情或者只需进行极简操作的情况下就能使用支持最新标准的浏览器,所以出现了“自动更新浏览器(evergreen web browsers)”,就是可以在启动阶段就能在后台自动更新的浏览器,由此我们可以展望今后用户使用的浏览器差异会越来越小。

因为 JavaScript 语言的敏捷特征,Julien 在博文中这样说到:

在这种形势下,Web 技术发展的结果是:YUI 之类的大型 JavaScript 库已逐渐失去社区的青睐。许多开发者如今把大型 JavaScript 库视作束缚其发展的围墙。

虽然 Yahoo 停止了 YUI 新功能的开发,但还是会持续修复一些严重的缺陷:

此后 YUI 的新版本会越来越少,周期也会变长,并且只会修复对 Yahoo 利益有重大影响的针对性补丁。


感谢邵思华对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。

2014-09-04 03:533275

评论

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

如何做好代码片段管理?

敏捷开发

项目管理 敏捷开发 极限编程 代码管理 代码编写

基于SkyEye运行Android——应用最为广泛的移动设备操作系统

DevOps和数字孪生

android 仿真 SkyEye

Macs Fan Control Pro for mac(电脑风扇控制软件) v1.5.16版

Mac相关知识分享

Mac软件 mac软件下载

Ethena 更新代币经济学,逼着空投用户作长期 Hodler?

TechubNews

前 OpenAI 首席科学家建「安全超级智能」实验室;Meta 重组元宇宙团队丨 RTE 开发者日报 Vol.228

声网

面试官:你讲下如何设计支持千万级别的短链?

EquatorCoco

程序员 面试 短链接

Ample Sound Ample Bass Yinyang for Mac(电贝司ABY)v3.6.0版

Mac相关知识分享

mac音乐制作工具 音乐插件

哈啰面试:说说Dubbo运行原理?

王磊

Java 面试

SD-WAN的主要功能和应用场景

Ogcloud

SD-WAN 企业组网 SD-WAN组网 SD-WAN服务商 SDWAN

域名解析大概多久生效?一文搞清楚解析生效时间那些事

国科云

七天快速开发电竞体育直播APP平台:软件源码解决方案

软件开发-梦幻运营部

Termius for Mac(多协议远程管理软件)

Mac相关知识分享

Mac软件 远程访问

AI与区块链的融合:Web3时代下的新应用探索

TechubNews

极限编程里最容易被忽略的实践

敏捷开发

项目管理 敏捷开发 极限编程 代码管理

Kotlin 编程语言详解:特点、应用领域及语法教程

不在线第一只蜗牛

kotlin 编程语言

软件测试学习笔记丨Pytest - 基本介绍

测试人

软件测试 pytest

SD-WAN服务商有哪些?推荐选哪个?

Ogcloud

SD-WAN 企业组网 SD-WAN组网 SD-WAN服务商 SDWAN

简单分析一下地产行业使用堡垒机的必要性-行云管家

行云管家

数据安全 堡垒机 地产

互联网行业采购堡垒机的四个必要性看这里!

行云管家

网络安全 数据 堡垒机

Yahoo(雅虎)宣布停止开发YUI_JavaScript_João Paulo Marques_InfoQ精选文章