开发人员的困境:选择Go还是Rust?

开发人员的困境:选择Go还是Rust?

如果让你列出过去十年出现的重要编程语言,几乎可以肯定Go和Rust榜上有名。
同样,如果让你坐下来想想如今哪种编程语言最适合开发对微服务友好且安全的框架或应用程序,你可能发觉在Go和Rust之间难以决定。
如果你难以决定到底是Go还是Rust更适合开发需求,继续读下去。此文比较了Go和Rust,解释了两者的相似和不同之处以及各自能为你做什么。
Go编程语言
Go(又叫Golang)于2009年向公众推出,它由谷歌工程师(包括以Unix成名的KenThompson)设计。开发Go出于诸多动机,但是开发人员的目标也许可以用此来概括:他们只是想要一种提供C++的效率,但经过优化后更容易在多核CPU上编写、阅读和部署的语言。
为此,Go的独特功能之一是goroutine,它使人们很容易定义作为不同子进程运行的函数。如果充分利用goroutine,开发人员可以用Go轻松构建同时在多个CPU核心上部署工作负载以充分发挥并发性的应用程序。
并发性和优化是强大的功能。这就是我们选择用Go开发Twistlock的原因之一。
Rust编程语言
Rust的历史在很多方面与Go的历史颇为相似。Rust起初是Mozilla一名工程师的个人项目,诞生于2000年代中期。该语言于2010年公开发布。
与Go一样,Rust的部分动机是希望改进C++的约定,包括使其更易于实现并发性。同时又不降低安全性也是一个主要的考量因素。为此,Rust使开发人员很难将可能导致缓冲区溢出或其他内存相关漏洞的缺陷引入代码中。
Go和Rust的共同点
Go和Rust在许多方面很相似。它们都是如今广泛使用的新兴编程语言之一。当今大多数其他流行语言的历史久得多,比如C、Java和Python。
Go和Rust都是经过编译的语言,开源,针对面向微服务的现代并行计算环境而设计的。
如果你已经了解C++,它们都很容易学习。
Govs.Rust
这可能让你不由得发问:“我该使用Go还是Rust来开发下一个应用程序?”
可以从多个方面来回答这个问题,但建议从正在构建的应用程序的类型来考虑。在我看来,Go适合更广泛的使用场景,而且更灵活一点。Go让人们很容易构建这种很好地分解的应用程序:可以充分发挥并发性,又可以作为一组微服务加以部署。
Rust也可以做那些事情,不过要难一点。从某些方面来说,Rust专注于防止与内存有关的安全漏洞,这意味着程序员必须竭尽全力执行的任务换成其他语言(包括Go)要来得更简单。
请注意:顺便说一下,这并不意味着Go不安全。Go与其他任何现代编程语言一样安全。它只是不像Rust那样关注安全性或者任由安全性优先于更广泛的功能。
简而言之:Rust较难使用,更加关注构建范围较狭窄的应用程序(安全是唯一重要的方面)。相比之下,Go很适合构建你不仅关注安全性,还关注其他诸多因素的应用程序——如果你是旨在构建灵活可扩展的应用程序或框架的DevOps团队,这可能是你的目标。
同样值得一提的是,Go在当今的开发人员中更受欢迎。TIOBEIndex将Go列在最流行编程语言排行榜上的第15位,而Rust排在第34位。我知道你不应该随大流,但在编程界,选择更流行的语言确实有好处。其他程序员更可能了解它们,这使得共享代码或为团队添加成员变得更容易。流行语言还往往有更好的社区支持、文档和插件。
我无法在使用Go还是Rust方面给出明确的建议,那是由于两种语言都是很棒的现代语言,你在决定如何构建新应用程序时最好两者都考虑一下。
话虽如此,与大多数程序员一样,我往往对Go更倾向一点,因为它适合更广泛的使用场景,同时仍提供很高的安全性和性能。

主题测试文章,只做测试使用。发布者:最新稳定辅助网,转转请注明出处:https://www.744broad.com/12146.html

(0)
上一篇 2023年3月1日 上午8:49
下一篇 2023年3月1日 上午8:55

相关推荐

  • (C和C ++ IDE智能代码编辑器)CLion 2019 for Mac版

    (C和C ++ IDE智能代码编辑器)CLion 2019 for Mac版 CLion2019forMac是一款专为开发C及C++所设计的跨平台IDE智能代码编辑器。CLionMac版是以IntelliJ为基础设计的,包含了许多智能功能来提高开发人员的生产力。这种强大的IDE帮助开发人员在Linux、OSX和Windows上来开发C/C++,CLion20…

    RUST资讯 2023年2月13日
    80
  • 不会还有程序员不知道这个网站「No Design」吧?不会吧,不会吧

    不会还有程序员不知道这个网站「No Design」吧?不会吧,不会吧 网站上收集了许多十分便利的UI设计工具与设计资源,看完后我内心激动不已,这网站对于那些不太懂设计的开发者来说,简直是超级福音啊!网站建立的初衷,是帮助一些毫无设计天赋的工程师能更好的完成开发工作,但从平台现有的资源来看,上面的工具其实也适用于大部分互联网从业人员。下面我们就来看看,里面具体…

    RUST资讯 2023年2月23日
    90
  • 天呐,广告牌还可以这么设计,太有意思了

    天呐,广告牌还可以这么设计,太有意思了 Hello大家好!我是Yifei。当我们人深感无聊的时候,就会去找一些乐子,比如找朋友聊天啊、去吃吃喝喝啊、打游戏啊、刷剧啊等等。在广告界呢,无聊广告铺天盖地,比如你在路上经过的高炮,上面是一个无聊的卖房广告,你经过一个公交站,上面是一个无聊的手机广告,你经过繁华都市,楼宇间尽是无聊的商品广告。如今,线上广告随着互联网…

  • Turbo-Geth 客户端:过去与未来

    Turbo-Geth 客户端:过去与未来 Turbo-Geth作为一个纯粹出于好奇心的项目,始于2017年(没错,就是在CryptoKitties导致的疯狂拥堵时期)。一开始是为了探究基于trie的数据库模式的替代方案。在2018年3月,Turbo-Geth项目从以太坊基金会处获得了一笔小额的奖金(2.5万美元)。在2019年第一第二季度,Turbo-Get…

    RUST资讯 2023年2月22日
    90
  • 「Rust」夺冠 Valve Index连续十八周TOP10

    「Rust」夺冠 Valve Index连续十八周TOP10 日前,Valve公布了上周(2021年1月4日-1月10日)Steam平台销量排行榜,由FacepunchStudios开发的第一人称末日生存联机游戏「Rust(腐蚀)」拿下冠军,「V社VR套件(ValveIndexVRKit)」继续表现上佳,紧随其后。此前已经七连冠的「赛博朋克2077(Cybe…

    RUST资讯 2023年2月14日
    60
  • 研究发现,主要的区块链比特币和以太坊仍然非常集中

    研究发现,主要的区块链比特币和以太坊仍然非常集中 【IFTNEWS区块链快讯】本周在加勒比海岛国库拉索岛举行的2018年金融危机会议上的研究人员,讨论了两个最大的加密协议,比特币和以太坊的分权。3月2日,伦敦大学学院的研究人员发表了一篇题为“平等社会或仁慈专政:加密货币治理状态”的新论文,进一步深入探讨了多少开发者对加密货币代码库作出贡献和评论。首先,研究人…

  • Google开源巨献:最热门的60款开源项目

    Google开源巨献:最热门的60款开源项目 1、机器学习系统TensorFlowTensorFlow是谷歌的第二代机器学习系统,按照谷歌所说,在某些基准测试中,TensorFlow的表现比第一代的DistBelief快了2倍。TensorFlow内建深度学习的扩展支持,任何能够用计算流图形来表达的计算,都可以使用TensorFlow。任何基于梯度的机器学习…

    RUST资讯 2023年2月18日
    60
  • 解读丰田“软件战略”

    解读丰田“软件战略” 没有哪个汽车品牌愿意在新技术上被拉开距离,即使许多新功能除了用户营销噱头之外并没有真正起到任何决定性作用。主导汽车开发的“软件优先”理念,在过去一年时间,被传统汽车制造商视为对于开拓新技术和推动公司未来发展的一种态度。上周,丰田研究院高级开发公司(TRI-AD)宣布,从2021年1月起,丰田将扩大和改进其业务部署,成为一家全新控股公司并…

    RUST资讯 2023年2月28日
    50
  • 《3D汽车追逐赛》评测:人挡杀人 佛挡杀佛!

    《3D汽车追逐赛》评测:人挡杀人 佛挡杀佛! 血泪成就车技,速度展示激情,这就是赛车运动,它起源于100年前,是一项比拼速度和技术的运动,比赛中每一次的漂移都让观众惊呼,每一次甩尾都能让观众热血沸腾,赛车运动一直用这样独特的方式演绎着车手精彩的人生,被越来越多的人追捧,这就是为什么玩家痴迷赛车游戏的原因所在,今天这款《3D汽车追逐赛》的游戏能否成就玩家的车手…

    RUST资讯 2023年2月13日
    60
  • 精品推荐—熙宁三年少府监重铸印

    精品推荐—熙宁三年少府监重铸印 印章,亦称图章,用作印于文件上表示鉴定或签署的文具,一般印章都会先沾上颜料再印上,不沾颜料、印上平面后会呈现凹凸的称为钢印,有些是印于蜡或火漆上、信封上的蜡印。制作材质有金属、木头、石头、玉石等。永和县,隶属于山西省临汾市,地处吕梁山脉南端,黄河中游晋陕大峡谷东岸,临汾市西北边缘,东邻隰县,南连大宁县,北与石楼县接壤,西与陕西…

    RUST资讯 2023年2月28日
    50
关注微信