上个月,『全球最大同性交友平台』GitHub 被微软以 75 亿美元(折合人民币 480 亿)的价格正式收购,这一事件引发诸多程序员担忧:

微软收购之后,Github 是否会将不再开源?

为防范于未然,开发者正把 repos 迁移到 GitLab 等其他 Git 托管平台;

GitHub 有 Atom,微软有 Visual Studio,用户明显重复。

对此,微软

回应了一切

,并表示不打算在 GitHub 上做太多改变,且以开发者为中心的初心不会改变,会积极地拥抱开源。

如今,52 天过去了,Github 也做出一些微软特色的改变。

改版放弃了 jQuery

之前不少网友就发现 GitHub 首页改版了,并大呼太不习惯。昨天,Github 前端团队的 Mislav Marohni 在 Twitter 发布了一则消息,表明在 GitHub 网站重构过程中放弃了 jQuery,没有再次使用其他任何框架去代替它,而是使用了原生的 JS,具体实现:

  • 使用 querySelectorAll 来查询 DOM 节点;
  • 使用 fetch 来代替 ajax;
  • 事件处理使用了事件代理;
  • 使用 DOM 标准化写了 polyfill;
  • 使用了自定义元素。

此外,据 Web 系统工程师 muan 表示,GitHub 早已将 Fetch、Delegated events、Custom Elements 项目开源,因此也不难猜测,基于此已有的经验 GitHub 才会进行弃 jQuery 的重构。

  • Fetch:https://github.com/github/fetch (polyfill)
  • Delegated events:https://github.com/dgraham/delegated-events
  • Custom Elements:https://github.com/search?q=topic%3Aweb-components+org%3Agithub

jQuery 的流行到被抛弃?

2006 年,jQuery 的第一个版本的面世,凭借着简洁、灵活的编程风格受到了开发者的喜爱。而它本身是一个 JavaScript 框架,它的设计的宗旨是“write Less,Do More”,即倡导写更少的代码,做更多的事情。它封装了 JavaScript 常用的功能代码,提供一种简便的 JavaScript 设计模式,优化 HTML 文档操作、事件处理、动画设计和 Ajax 交互。

从之前的风靡到如今的被抛弃,究其原因,不少前端工程师表示,对于 jQuery 来说,大量的操作 DOM 虽然方便,但是会牺牲很多页面的性能。另一方面,现阶段 React、Vue 和 Angularjs 等主流前端框架并不依赖 jQuery,都可以独立使用。况且浏览器的兼容问题越来越少,当浏览器兼容不再是问题时,jQuery 的价值就大打折扣了。

不过 GitHub 使用 fetch 来代替 ajax 这一举措来看,fetch 几乎不支持 IE (https://caniuse.com/#search=fetch),这是否也意味着 GitHub 已放弃 IE 浏览器的兼容?

如何看待 GitHub 网站放弃 jQuery 的使用?

基于此问题,Hacker News (https://news.ycombinator.com/item?id=17612540)上的网友展开了热烈的讨论,其表示:

@interlocutor:GitHub 网站移除 jQuery 并不是一件好事情。具有讽刺意味的是,从这个网站中可以(http://youmightnotneedjquery.com/)对比左右的代码,我们发现相同的功能,jQuery 使用的代码量更少。

其实,jQuery 具有许多简洁方便的功能,如 addClass('selected') 和 siblings().removeClass('selected'),开发者不必每次选择之后检查空值。

不过像 closest() 和 remove() 这样的函数在 IE11 并不兼容,其他 replaceWith()、before() 在 Edge 中也不可用。

对于简单一点的网站,想要通过重构删除 jQuery 很容易,但是对于更复杂的 JavaScript 应用程序,尤其是具有大量交互的网站,删除 jQuery 只会导致更多的代码产生或最终编写大量的实用程序函数。

@geuis:jQuery 对 JavaScript 和浏览器生态系统产生了巨大的影响。 一个伟大的工具是指,它解决的问题不再存在,那么可以功成身退了。

@patorjk:大约 8 年前,我刚接触到一个项目时,我的老板告诉我,这个 Web App 非常,希望我帮助它加快响应速度。当时我看了一下,发现 App 使用了大量具有重叠功能的库——jQuery、ExtJS、Mochikit、YUI。我发现在开发时,每位开发者都只是为其实现的功能简单地选择了适用的库,这就导致 App 过于膨胀(并且复杂)。不过,如今浏览器 API 及其 polyfill 已经有足够标准化的 Web 应用程序开发,这是一件好事情。

在国内,不少前端开发者对 GitHub 弃用 jQuery 也表示不解,甚至不少开发者表示发出“我刚学会,你就弃用”的无奈,对此,你怎么看?

原文地址:https://www.seoxiehui.cn/article-44184-1.html

(转)GitHub 被微软收购后的 52 天,改版并放弃了 jQuery!相关推荐

  1. GitHub 被微软收购后的 52 天,改版并放弃了 jQuery !

    上个月,『全球最大同性交友平台』GitHub 被微软以 75 亿美元(折合人民币 480 亿)的价格正式收购,这一事件引发诸多程序员担忧: 微软收购之后,Github 是否会将不再开源? 为防范于未然 ...

  2. 新 CEO 谈论GitHub 被微软接管后的未来

    2019独角兽企业重金招聘Python工程师标准>>> 微软CEO Satya Nadella表示,没有什么可担心的,因为这家位于雷德蒙德的软件巨头想要做的是提高GitHub的功能, ...

  3. 写在Github被微软收购之际 - Github的那些另类用法

    这几天朋友圈被微软75亿美元收购Github的新闻刷屏了.Jerry也来贡献一篇和Github相关的文章. 这篇文章包含了Jerry平时对于Github的一些另类用法.目录如下: 1. 部署HTML应 ...

  4. 被微软收购两年后,GitHub 怎么样了?

    整理 | 唐小引 头图 | CSDN 下载自 VCG 出品 | CSDN(ID:CSDNnews) 7 月 15 日,由中国开源软件推进联盟(COPU)主办,赛迪传媒.<软件和集成电路>杂 ...

  5. GitHub:为什么我们最终选择放弃了 jQuery

    [CSDN编者按]7月17日,GitHub改版并放弃了jQuery, 这对于GitHub来说,绝对是一件可以载入公司史册的大事. 今天的文章中,四位参与改版和弃用JQuery的GitHub工程师,将介 ...

  6. 全球最大“同性”交友网站GitHub或被微软收购,收购价可能高达 50 亿美元

    来源:综合businessinsider.venturebeat 编译:刘小芹 原文:http://www.sohu.com/a/233803905_473283 [新智元导读]据外媒Business ...

  7. 【历史上的今天】6 月 4 日:微软收购 Github;MacOS Mojave 推出;英特尔发布第四代架构 Haswell

    整理 | 王启隆 透过「历史上的今天」,从过去看未来,从现在亦可以改变未来. 今天是 2022 年 6 月 4 日,在 1998 年的今天,我国互联网用户突破一百万.自从中国科学技术网在国内首次实现了 ...

  8. 评微软收购GitHub

    前段时间,微软正式宣布以75亿美元收购GitHub.除了微软和GitHub以外,也许对这笔并购最在意的,正是微软的同城敌友,亚马逊.在我看来,GitHub也许是微软史上最好的收购. 75亿美元贵不贵? ...

  9. 我看微软收购GitHub

    今天是微软收购GitHub的第三天,之前很多人担心被微软收购的GitHub会步Skype,诺基亚等企业的后尘,凡此种种我觉得更多人的担心是:GitHub不再开源免费罢了. GitHub今年4月刚成立十 ...

最新文章

  1. ar ebs 销售订单关闭_有关销售订单的工作流(workflow)定义和处理方式
  2. [渝粤教育] 中国地质大学 工业通风及除尘 复习题
  3. Win7虚拟无线AP以及Android手机抓包
  4. 36套java精品高级课_Dubbo-ZooKeeper“走一波”
  5. Oracle 练习P297 131026 PL/SQL块程序
  6. IP通信基础学习第十周
  7. SAP NetWeaver 平台介绍
  8. ASP.NET统计图表控件
  9. USBCleaner v6.0 Build 20080327 - U盘病毒专杀工具
  10. 面试时会问到的项目中的问题总汇
  11. QQ、微信可以正常访问通讯,浏览器无法打开网页
  12. Python笔记,Python链接mysql
  13. Siri语音控制树莓派开关灯 --智能家居
  14. 工厂模式——简单工厂模式、工厂方法模式和抽象工厂模式
  15. win10系统开发环境搭建
  16. 厉害的Python工程师,都是怎么做学习规划的?超详细学习入门—精通教程
  17. html2048游戏算法逻辑,2048小游戏算法解析
  18. 计算机语言大学专业排行,「全球人工智能学科高校排名」CMU居榜首,清华大学第4...
  19. 一个人竟然撸了一个抖音 App
  20. JAVA基础测试企业面试题

热门文章

  1. qthread run结束了算销毁吗_Java线程的run()方法和start()方法有什么区别?
  2. 封年大促|年货节优秀PSD分层模板
  3. 承包你所有壁纸需求,高图网图片,美到窒息
  4. APP设计|搜索页面设计灵感
  5. UI设计素材|字体的重要性
  6. 平面设计师友好的免抠PNG图片素材
  7. 计算机制图的平行投影,工程制图与计算机辅助设计课件-20210406204806.ppt-原创力文档...
  8. pr调色预设_视频调色不好掌握?用这2000套PR、AE、达芬奇调色预设吧
  9. 如何在手机上打开xmind文件_xmind在手机上怎么操作
  10. C++ 递归算法解析(演示语言:c++/c#/python/lua)(用博主会的所有语言来演示一波)