当前位置:首页 > 科技  > 软件

Go 是社区驱动吗?哪种模式更好?

来源: 责编: 时间:2024-04-07 17:03:19 246观看
导读本文继续基于对两篇文章的前因后果的补充,基于《Is Golang truly community driven and does it really matter?》,煎鱼对内容有所调整和补充。快速背景几年前在 Hacker News 社区,针对 Go 的一个问题引发了激烈的辩论:“

本文继续基于对两篇文章的前因后果的补充,基于《Is Golang truly community driven and does it really matter?》,煎鱼对内容有所调整和补充。hUE28资讯网——每日最新资讯28at.com

快速背景

几年前在 Hacker News 社区,针对 Go 的一个问题引发了激烈的辩论:“Go 是 Google 的语言,而不是社区的”。hUE28资讯网——每日最新资讯28at.com

这个讨论最初是由在多伦多大学计算机科学系工作的 Chris Siebenmann(下称:他)发起的。hUE28资讯网——每日最新资讯28at.com

图片图片hUE28资讯网——每日最新资讯28at.com

他在博客文章中写道:“Go 有社区贡献,但它不是一个社区项目。它是 Google 的项目。”hUE28资讯网——每日最新资讯28at.com

为什么 Go 不是社区的语言

Chris 明确指出,社区的声音对于 Go 的发展并不重要,我们必须接受这一点。他认为:Google 是 Go 社区贡献的守门人;只有 Google 独自决定什么是被接受的,什么不被接受。hUE28资讯网——每日最新资讯28at.com

如果开发者想要一些重要的特性被接受进 Go,与其与社区建立共识,远不如说服 Go 核心团队重要。hUE28资讯网——每日最新资讯28at.com

他引用了一个例子:Google 的 Go 核心团队成员之一(指的是现在的 Go 核心团队负责人 rsc)放弃了社区一直在努力开发的 Go 依赖管理系统(指的是 dep 等),并引入了一个新的、相对激进的不同模型,也就是现在的 Go Module。hUE28资讯网——每日最新资讯28at.com

注:这里讲的是好多年前,Go 还没有官方的模块管理。社区自发的有 godep 等各种工具。一开始谈好要基于某一个社区工具继续开发转成官方的。结果后面 rsc 等觉得不好用,最终自研了官方的模块管理,直接一纸之下取代了。hUE28资讯网——每日最新资讯28at.com

期望和对比管理方式

Chris 期望的是:Go 核心团队要关心社区,并希望他们参与建设,但要限制在一定的程度的参与度。他希望 Go 核心团队能坦率地诚实地说明情况,而不是假装并误导人们。hUE28资讯网——每日最新资讯28at.com

他进一步补充说:“只有当 Go 核心团队成员开始离开 Google,并尝试继续积极参与决定 Go 的方向时,我们才能确定 Go 是一个社区驱动的语言。”hUE28资讯网——每日最新资讯28at.com

他将 Go 与 C++ 进行了比较,称后者是一个真正的社区驱动语言。hUE28资讯网——每日最新资讯28at.com

图片图片hUE28资讯网——每日最新资讯28at.com

他说 C++ 有多个主要实现,这些都是真正的社区项目,C++ 的方向由一个开放标准委员会决定,成员分布相对分散。hUE28资讯网——每日最新资讯28at.com

图片图片hUE28资讯网——每日最新资讯28at.com

社区驱动还是企业所有的区别

开发人员中一直流传着这样一种观点:一些开源编程项目只是主要由一家公司驱动的商业项目。hUE28资讯网——每日最新资讯28at.com

我们看一下业内的顶级开源项目,它们中的大多数都有某种企业合作、支持,甚至直接的资金援助。hUE28资讯网——每日最新资讯28at.com

例如:hUE28资讯网——每日最新资讯28at.com

  • 苹果的 Swift;
  • 甲骨文的 Java、MySQL;
  • 微软的 Typescript;
  • 谷歌的 Kotlin、Go、Android、MongoDB、Elasticsearch;

仅举几例。这就引出了一个问题:企业对开源项目的所有权到底意味着什么?hUE28资讯网——每日最新资讯28at.com

仁慈的独裁有两种结果。hUE28资讯网——每日最新资讯28at.com

如果某个项目基于社区建议进行修改,而修改又是个坏主意,企业团队可以进行干预,阻止修改。hUE28资讯网——每日最新资讯28at.com

但另一方面,反过来看,即使核心团队的少数成员不同意,也可以阻止社区的好想法得到实施。hUE28资讯网——每日最新资讯28at.com

社区观点

Chris 的帖子在 Hacker News 上引起了开发者的广泛关注,他们既支持也反对提出的观点。hUE28资讯网——每日最新资讯28at.com

以下是摘取的有一定观点的评论:hUE28资讯网——每日最新资讯28at.com

  • 网友 A:拥有一个社区并与它合作很重要,但尤其是对于编程语言来说,必须有一个清晰的概念,哪些特性应该实现,哪些不应该——仅仅为了使社区感觉良好而接受社区贡献将是错误的方式。
  • 网友 B:许多人喜欢 Go 是因为它是一种有观点的语言。我不确定一个社区运行的语言会创造出像那样的东西,因为意见太多。许多人声称代表社区,但不是那些不分享他们观点的社区。没有明确的领导者,我担心技术方向和品味将变成政治,这似乎更不确定和风险。

总结

整体看来,似乎没有完美的答案。因为几乎所有所谓的成功的顶级项目,背后都一定有各大公司的影子,只是或多或少罢了。hUE28资讯网——每日最新资讯28at.com

Go 这一门编程语言的模式,可能也是一种比较另类的成长方式。现在被抨击的点,有些也是直接太狠直接推翻社区导致的。hUE28资讯网——每日最新资讯28at.com

另外结合 Go 的发展历程来看,如果 Go 不是诞生于 Google 团队内部,可能发展和当红的也不会那么顺利,与云原生的结合可能也会没有那么深。hUE28资讯网——每日最新资讯28at.com

本文链接:http://www.28at.com/showinfo-26-81723-0.htmlGo 是社区驱动吗?哪种模式更好?

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: 一个注解实现 WebSocket 集群方案,这样玩才爽!

下一篇: Echarts的title标题属性?您知道多少?

标签:
  • 热门焦点
  • K60至尊版刚预热 一加Ace2 Pro正面硬刚

    Redmi这边刚如火如荼的宣传了K60 Ultra的各种技术和硬件配置,作为竞品的一加也坐不住了。一加中国区总裁李杰发布了两条微博,表示在自家的一加Ace2上早就已经采用了和PixelWo
  • 不容错过的MSBuild技巧,必备用法详解和实践指南

    一、MSBuild简介MSBuild是一种基于XML的构建引擎,用于在.NET Framework和.NET Core应用程序中自动化构建过程。它是Visual Studio的构建引擎,可在命令行或其他构建工具中使用
  • 之家push系统迭代之路

    前言在这个信息爆炸的互联网时代,能够及时准确获取信息是当今社会要解决的关键问题之一。随着之家用户体量和内容规模的不断增大,传统的靠"主动拉"获取信息的方式已不能满足用
  • 每天一道面试题-CPU伪共享

    前言:了不起:又到了每天一到面试题的时候了!学弟,最近学习的怎么样啊 了不起学弟:最近学习的还不错,每天都在学习,每天都在进步! 了不起:那你最近学习的什么呢? 了不起学弟:最近在学习C
  • 重估百度丨“晚熟”的百度云,能等到春天吗?

    ©自象限原创作者|程心排版|王喻可2016年7月13日,百度云计算战略发布会在北京举行,宣告着百度智能云的正式启程。彼时的会场座无虚席,甚至排队排到了门外,在场的所有人几乎都
  • 梁柱接棒两年,腾讯音乐闯出新路子

    文丨田静 出品丨牛刀财经(niudaocaijing)7月5日,企鹅FM发布官方公告称由于业务调整,将于9月6日正式停止运营,这意味着腾讯音乐长音频业务走向消亡。腾讯在长音频领域还在摸索。为
  • 小米MIX Fold 3配置细节曝光:搭载领先版骁龙8 Gen2+罕见5倍长焦

    这段时间以来,包括三星、一加、荣耀等等有不少品牌旗下的最新折叠屏旗舰都得到了不少爆料,而小米新一代折叠屏旗舰——小米MIX Fold 3此前也屡屡被传
  • iQOO 11S评测:行业唯一的200W标准版旗舰

    【Techweb评测】去年底,iQOO推出了“电竞旗舰”iQOO 11系列,作为一款性能强机,该机不仅全球首发2K 144Hz E6全感屏,搭载了第二代骁龙8平台及144Hz电竞
  • 7月4日见!iQOO 11S官宣:“鸡血版”骁龙8 Gen2+200W快充加持

    上半年已接近尾声,截至目前各大品牌旗下的顶级旗舰都已悉数亮相,而下半年即将推出的顶级旗舰已经成为了数码圈爆料的主流,其中就包括全新的iQOO 11S系
Top