大家好,我是前端实验室
的大师兄!
近几年来中国互联网飞速发展,前端更是日新月异,放到十年前,肯定不敢想象现在的互联网这么欣欣向荣
虽然说互联网发展很快,但是当时的大佬们写的代码放到现在依旧很惊艳,大师兄无意之间看到了腾讯团队十年前的代码,虽然已经过去了十多年,但是我今天看到依旧觉得很惊艳,今天就带大家来考考古
为了防止大家怀疑大师兄用现在的代码来忽悠大家,这就给大家奉上一张图
可以看到最新的提交时间是2013年,已经足足将近10年了
JX
接下来考古开始,从项目描述上,我们可以知道:JX(Javascript eXtension tools)
是腾讯AlloyTeam推出的模块化、非侵入式Web前端框架,适合构建和组织工业级大规模、高效率的 Web App
一个类似 Google Closure Library 的 Web 前端开发框架,服役于 WebQQ 等大规模的 WebApp
从项目简介上我们可以看出来,原来从2008年就开始开发了,距今已有14年之久
设计理念和特性
现在看看腾讯的设计理念,感觉十多年前人家的思想觉悟都已经领先好几十年了,这一套理念放到现在依旧不落时,甚至还依旧很先进,不信你看看
- 保持最优的执行效率
- 保持 Javascript 原有的代码风格,降低学习难度
- 不做任何的过度封装
- 更好的组织工业级 Javascript 应用程序
- 探索在前端使用 MVP、MVC 等模式来构建大型 WebApp
- 探索工业级 Javascript 的开发技术
特性:
- 微内核设计:内核可完全分离出来,用于构建其他的框架
- 原生对象零污染:你懂的,随着js的App越来约复杂,对原生对象的零污染也体现的越来越重要了
- 模块封包:采用命名空间、闭包等方式建立了模块封包的体系,帮助更好的组织海量js代码
- 模块自由拼装:自身模块做了良好的架构分离,尽可能让各个模块之间可以自由的拼装组合
- 无缝集成各种js框架:与jQuery, YUI, Mootools, Prototype.js 等框架无缝集成;与多种局部框架无缝集成,如:Mini, Sizzle, cssQuery, xpath, JSON 等等
- 多版本共存:如采用的Jx版本过旧,旧有的Javascript代码不能与新版本Jx兼容,则可以采用多版本共存的方式保持程序的可延续性
- 分层设计:Javascript核心层,与Javascript解释引擎无关的封装和扩展;浏览器端Javascript层,对浏览器中的Javascript引擎部分的封装和扩展
大公司不亏是大公司,十多年前的发展规划,现在看看依旧很