node.js和io.js有什么区别?

mau*_*lus 125 javascript node.js

io.jsnode.js有什么区别?最新的io.js是分叉node.js,并且由一些同样的人制作node.js.

导致这个分支的主要区别是什么,以及它对node.js整体社区意味着什么?

Bre*_*dan 119

io.jsJoyent的Node.js的一个分支

有什么区别?

io.js:

  • Node-forward基本上被合并到io.js中
  • 在社区驱动的开发和主动发布周期的基础上分叉
  • 包括许多原始的Node.js开发人员
  • 有一个"与Node.js合并"的未来目标

这个存储库最初是作为一个欢乐/节点的GitHub分支,其贡献,发布和贡献在一个开放的治理模型下.

我们打算以越来越规律的方式登陆与node.js迄今为止构建的npm生态系统兼容的版本.

Node.js的:

  • 原始软件
  • 近期已经放缓了发展
  • Joyent赞助
  • Joyent拥有该商标 Node.js

他们为什么分裂?

它主要分为三个原因:更快,更积极的版本和1.0.0发布版本,更多社区驱动的开发而不是咨询委员会,以及使用semver进行发布.

什么是咨询委员会

咨询委员会是Joyent的计划,旨在为Node.js提供一种更集中,更快捷的方式来规划开发并规划未来的功能1.0.0.计划通过组建一个使用Node.js的大型公司董事会来完成

来自Joyent的博客引用:

随着社区变得越来越复杂,我们必须找到平衡所有成员需求的方法,并为这些组织提供一个平台,让他们聚集在一起并为项目提供意见.

为什么咨询委员会讨厌?

以前,Node.js是通过邮件列表,GitHub问题运行的,任何人都可以贡献自己的想法.这个想法开始变得有些讨厌,因为它将控制权从你的普通日常贡献者手中夺走,并将权力转移到了"大人物":沃尔玛,雅虎,IBM,微软,Joyent,NetflixPayPal等公司.

外部消息来源

  • 政治正确性绝对是邪恶的,在技术项目中没有地位(希望继续成为一个技术项目).重点应放在结果和任人唯贤上.可悲的是,越来越多的项目正在采用这些政策和态度.Mozilla做了类似的事情,我记得他们的一个关键人物.一旦我看到这样的废话在项目中获得牵引力,我就指出它并抗议分心.如果它继续前进我退出.大家应该.http://developers.slashdot.org/comments.pl?sid=6303659&cid=48533619 (18认同)
  • 它实际上是分裂的部分原因是整个性别代词冲突在他们的大多数贡献者离开时结束了......还有其他原因,但那是打破骆驼的稻草 (8认同)
  • io.js正在与node.js合并,我猜http://www.infoworld.com/article/2923081/javascript/reunited-io-js-rejoins-with-node-js.html (4认同)
  • “ io.js正在与node.js合并”-两者都已合并。好消息 !!https://iojs.org/en/ (3认同)
  • “政治正确绝对是邪恶的,在技术项目(想要继续成为技术项目)中没有地位。” “重点应该放在结果和精英管理上。” 有趣的是(但并不出乎意料),这些都是相互矛盾的陈述。事后看来,我很高兴 OSS 社区作为一个整体最终通过包容性选择了精英管理,否则他们将不得不在你的名字旁边加上一个星号:) (2认同)

Gab*_*uka 19

实际上,Node.jsio.js之间存在实际差异.其他答案遗忘的一些事实:

为什么?因为io.js 1.6.2附带Google V8 4.1.0.25,而Node.js 0.12.1附带V8 3.28.73.此外,ECMAScript 6的标志在Node.js和io.js之间是不同的.可以在此处找到io.js的ECMAScript 6标志指南.

  • 您实际上在浏览器中禁用了JS?!当你听到'没有启用JavaScript的情况下它会工作吗'时,你一定是那个让数百万网络开发者叹息的家伙吗? (15认同)
  • 一个有趣的问题是,如果在浏览器中禁用了JS(默认情况下应该是默认值),那么您提到的[比较表](http://kangax.github.io/compat-table/es6/)将无法正确显示.在你问之前:我们在这里谈论服务器端JS,而不是浏览器端!) (2认同)

Mat*_*all 15

TL; DR io.js是node.js的未来化身.

io.js网站上写道:"io.js是一个节点和npm兼容的javascript平台." 它是一组工具(运行时/ VM,包管理器等),它与当前作为节点存在的工具兼容.任何差异都可能在底层实现中,以及io.js在node.js功能集之外添加的任何扩展.

(为什么与已经存在的东西兼容的东西会分裂社区?为什么这是一件坏事?)

请注意,io.js尚未发布!然而,io.js路线图说明了节点和io之间的一些特别相关的差异.

  • "Node已经非常稳定了"但Node 没有达到1.0; 它目前在0.10.33.
  • "整个生态系统使用semver,而节点使用混乱的偶数/奇数释放结构." 通过为新(ish)项目引入新名称,他们将能够解决这个问题.

据我了解,io.js是1.0-alpha1和未来的节点版本,但是:

  • "现实有一个众所周知的自由主义偏见" - 斯蒂芬科尔伯特 (26认同)
  • "未来的化身"这个答案是亲io.js的偏见. (15认同)
  • @BrendanAshworth从技术上讲,"未来化身"声明并不正确.io.js推动了node.js的进步(特别是ES6支持),并由node.js的原始创建者领导.考虑到Gojaddy已经获得了nodejitsu(NPM的运营商)并且刚刚在'npm'名称上提交了商标,并且'node.js'的名称是Joyent的商标,node.js/npm生态系统可能处于危险之中.如果事情向南,那么完全可以迁移到io.js. (3认同)
  • @BrendanAshworth:即使这是真的,这似乎也没有理由成为一个downvote.如果有任何反io.js参数,请告诉我们! (2认同)
  • @Bergi我实际上没有给出答案 - 只是因为它有偏见并不意味着它*不是一个好答案*.有一个upvote :) (2认同)

VIK*_*HLI 9

io.js是node.js的一个分支.但现在io.js和node.js再次合作.这就是为什么node.js直接从0.12.x直接跳转到4.0.0,因为node.js版本4.0.0包含来自io.js版本3.0.0的所有主要更新