您当前的位置:首页 > 电脑百科 > 程序开发 > 语言 > Go语言

Golang 会淘汰 Python 吗?

时间:2020-02-19 11:10:48  来源:CSDN  作者:

Golang和Python究竟哪种语言更适合AI工程师?Python很出色,但对于AI编程来说,Golang或许更合适。

Golang 会淘汰 Python 吗?

作者 | Michael lyam

译者 | 孙薇,责编 | 郭芮

以下为译文:

Golang语言出现于大约十年前,也就是2009年11月,到现在刚满10岁不久。这门由google工程师所开发的语言,大大提高了开发者的工作效率。语言开发者的初衷是希望这种语言能消除C++等语言中的所谓“额外垃圾”,它允许我们编译机器码,支持运行时反射,并有着便利的垃圾回收机制。

Golang语言如今正成为机器学习及AI的主流编程语言,惠及全球数百万的用户。一些大品牌包括网飞、美国运通、Uber、Dropbox、Salesforce、Twitter以及Twitch等都是Golang的用户。

Golang会淘汰Python吗?答案是:并不会。

Python使用广泛,且用途太多,反而因此过时。它是一种编程语言,可以将数千个组件从单独的模块编译为整个的开发程序包。Python还有一个强大的社区,并有望在未来数十年间保持活跃。同时,在多种环境的测试下,Python公认是开发初学者极易入手的编程语言,深受年轻开发者的追捧。Go语言的性能在编写服务器端脚本时要优于Python,因此,如果你要寻找的是具有快速部署周期的超高性能并发服务时,Golang会优于Python。

但是,如今Go和Python被并称为最适合AI专业人士的热门语言。当公司同时使用这两种语言时,提出一个严峻的解决方案对我们来说可能会是个挑战。

对于AI工程师,Golang的优势

AI即将席卷整个技术世界。机器学习、自我纠正和推理都是一些可以模仿人类智能的应用程序。如今,AI驱动的应用使企业能够改善自身资源运用,从而造成积极的影响。

高可伸缩性及计算能力:与Python相比,Golang在可伸缩性和性能方面的潜力更大,使用Go是出于这样的考量:Go在数学计算方面速度更高。比如,与Python相比,Go可以处理高达20-50倍数量的复杂数学问题,且处理速度更快。Golang在AI上的用途更广:尽管Go的库比较小,但一直持续增长,覆盖了AI方面多个用途的需求。Go的数据库,如GoLearn(数据处理),Goml(传输数据)以及Hector(解决二进制分类问题)都是为AI及其应用服务的一些库。提供良好的代码可读性:Go语言所用的算法提供了一种极简主义的方法,允许开发者轻松编写可读的代码。Go语言的开发者可以轻松使用Go语言库:大多Go语言的开发者不需要选择其他编程语言所编写的库。Go拥有库的核心优势在于:使用Go语言的AI专业人士可以获得开发者的舒适感。

对于AI工程师:Python的优势

IT行业中新贵是什么?答案大多集中在机器学习和AI等领域,且确实如此。这两种技术一直是IT行业的主流,且会一直延续到短期未来。

多个库:有各种各样的库可以协助AI工程师构建全新的算法、进行数据集的处理、处理模型、处理最为复杂的数据等,还提供了更多其他的功能。别忘了,TensorFlow就是最热门的库之一,还是开源的,可用于Google多个机器学习的应用。作为一门语言,Python是可访问的:从业务方面来说,语言的可访问性仅仅意味着拥有庞大的Python编程专家市场。此外,我们知道这些编程语言已经在全球范围内普及起来。强大的社区:Python具有完善的强大社区。根据2019年的GitHub报告,全世界大约有100万次pull request,该社区倾向于为创建新库投入资源,以扩展Python工具集及更新相关文档。

为什么要用Golang,而不是Python?

在可伸缩性上,Golang任务就是维护并帮助开发者在更大范围内解决问题,这也是Golang内置支持并发流程通道的原因。但Python在并发方面则面临着重大挑战。

由于支持并发,Go语言广泛运用在集群计算和云计算方面。

如上所述,当涉及到可读性时,Python肯定更占优势,但有时未免太过。Python确实为使用者在同一件事的阐述上提供了多种方式,但反而常会引发混乱。相反,Go语言在编程时遵循着严格的规则,不允许简单导入不需要的库,也不允许创建不必要的变量。当然,这意味着Go语言在执行任务时优势更大。尽管有些人可能对代码非通用的事实不太满意,但会有人在乎核心编程的事情吗?也许,只要代码是可读的,就无需在意了。

想要就哪种语言更好得出结论,可能是一项艰巨的工作。尽管大多数情况下,Golang似乎占了上风。目前,它的耀眼程度可能还不如Python,但最终某天会成长到那个程度。根据记录,Python花费了20年才达到如今的水平,最初10年中Python并未引起太多关注,直到2001年才逐渐崛起。因此,Go语言也一定会赶上如今的Python,也许在引发关注方面,Go语言已经有了一定出色的表现。

原文:https://www.rtinsights.com/why-golang-and-not-python-which-language-is-perfect-for-ai/

作者:Michael lyam, 作家、AI极客、企业及社交媒体策略师。专业领域包括:人工智能、机器学习、物联网、数据科学、区块链和企业战略等主题。

译者:孙薇,前产品经理,现从事科幻小说及技术文章的编辑工作,兼职翻译。

本文为 CSDN 翻译,转载请注明来源出处



Tags:Golang   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,如有任何标注错误或版权侵犯请与我们联系(Email:2595517585@qq.com),我们将及时更正、删除,谢谢。
▌相关推荐
golang context 很好用,就使用php实现了github地址 : https://github.com/qq1060656096/php-go-context context使用闭坑指南1. 将一个Context参数作为第一个参数传递给传入和...【详细内容】
2021-11-05  Tags: Golang  点击:(41)  评论:(0)  加入收藏
简介工作中经常有定时执行某些代码块的需求,如果是PHP代码,一般写个脚本,然后用Cron实现。Go里提供了两种定时器:Timer(到达指定时间触发且只触发一次)和 Ticker(间隔特定时间触发)...【详细内容】
2021-05-10  Tags: Golang  点击:(310)  评论:(0)  加入收藏
不管你学没学过golang,都不妨碍这个21世纪的c语言正变得越来越流行,越来越多的平台服务使用golang来构建,我们熟知的docker就是采用golang语言进行开发设计的。谷歌作为golang...【详细内容】
2021-05-10  Tags: Golang  点击:(505)  评论:(0)  加入收藏
之前用 go 写一个小工具的时候, 用到了多个协程之间的通信, 当时随手查了查, 结果查出来一大坨, 简单记录一下. golang中多个协程之间是如何进行通信及数据同步的嘞.共享变...【详细内容】
2021-02-25  Tags: Golang  点击:(423)  评论:(0)  加入收藏
12月初,我们发现了一种新的用Golang编写的蠕虫。该蠕虫延续了 Golang在2020年流行的多平台恶意软件趋势。...【详细内容】
2021-01-05  Tags: Golang  点击:(175)  评论:(0)  加入收藏
本文主要研究一下golang的zap的ReflectType sweetenFieldszap@v1.16.0/sugar.gofunc (s *SugaredLogger) sweetenFields(args []interface{}) []Field { if len(args) ==...【详细内容】
2020-12-22  Tags: Golang  点击:(64)  评论:(0)  加入收藏
Golang的匿名结构是什么?匿名结构就像普通结构一样,但是它没有名称定义,因此不能在代码的其他地方引用。Go中的结构类似于C等其他语言中的结构。它们是字段的类型化集合,用于将...【详细内容】
2020-12-17  Tags: Golang  点击:(140)  评论:(0)  加入收藏
前文《理解 Paxos》只包含伪代码,帮助了理解但又不够爽,既然现在都讲究 Talk is cheap. Show me the code.这次就把文章中的伪代码用 Go 语言实现出来,希望能帮助各位朋友更直...【详细内容】
2020-12-15  Tags: Golang  点击:(116)  评论:(0)  加入收藏
今天逛github超市时,发现一个非常不错的数据可视化库go-echarts,特分享给大家。介绍在 Golang 这门语言中,目前数据可视化的第三方库还是特别少,go-echarts的开发就是为了填补这...【详细内容】
2020-12-15  Tags: Golang  点击:(88)  评论:(0)  加入收藏
由于Golang的语言设计的原因,不管是不是愿意,每个golang开发者的几乎每一段代码都需要与error做缠斗。下面我就简单分析一下golang中的error相关。...【详细内容】
2020-12-02  Tags: Golang  点击:(86)  评论:(0)  加入收藏
▌简易百科推荐
zip 是一种常见的归档格式,本文讲解 Go 如何操作 zip。首先看看 zip 文件是如何工作的。以一个小文件为例:(类 Unix 系统下)$ cat hello.textHello!执行 zip 命令进行归档:$ zip...【详细内容】
2021-12-17  Go语言中文网    Tags:Go语言   点击:(13)  评论:(0)  加入收藏
大家好,我是 polarisxu。前段时间,Russ Cox 明确了泛型相关的事情,原计划在标准库中加入泛型相关的包,改放到 golang.org/x/exp 下。目前,Go 泛型的主要设计者 ianlancetaylor 完...【详细内容】
2021-11-30  Go语言中文网    Tags:slices 包   点击:(24)  评论:(0)  加入收藏
前言最近因为项目需要写了一段时间的 Go ,相对于 Java 来说语法简单同时又有着一些 Python 之类的语法糖,让人大呼”真香“。 但现阶段相对来说还是 Python 写的多一些,偶尔还...【详细内容】
2021-11-25  crossoverJie    Tags:Go   点击:(29)  评论:(0)  加入收藏
go-micro是基于 Go 语言用于开发的微服务的 RPC 框架,主要功能如下:服务发现,负载均衡 ,消息编码,请求/响应,Async Messaging,可插拔接口,最后这个功能牛p安装步骤安装proto...【详细内容】
2021-09-06    石老师小跟班  Tags:go-micro   点击:(197)  评论:(0)  加入收藏
GoLand 2021.2 EAP 5 现已发布。用户可以从工具箱应用程序中获得 EAP 构建,也可以从官方网站手动下载。并且从此 EAP 开始,只有拥有有效的 JetBrains 帐户才能加入该计划。手...【详细内容】
2021-06-29  IT实战联盟  今日头条  Tags:GoLand   点击:(185)  评论:(0)  加入收藏
作者:HDT3213今天给大家带来的开源项目是 Godis:一个用 Go 语言实现的 Redis 服务器。支持: 5 种数据结构(string、list、hash、set、sortedset) 自动过期(TTL) 发布订阅、地理位...【详细内容】
2021-06-18  HelloGitHub  今日头条  Tags:Go   点击:(125)  评论:(0)  加入收藏
统一规范篇合理规划目录本篇主要描述了公司内部同事都必须遵守的一些开发规矩,如统一开发空间,既使用统一的开发工具来保证代码最后的格式的统一,开发中对文件和代码长度的控制...【详细内容】
2021-05-18  1024课堂    Tags:Go语言   点击:(232)  评论:(0)  加入收藏
闭包概述 闭包不是Go语言独有的概念,在很多编程语言中都有闭包 闭包就是解决局部变量不能被外部访问的一种解决方案 是把函数当作返回值的一种应用 代码演示总体思想:在函数...【详细内容】
2021-05-14  HelloGo  今日头条  Tags:Go语言   点击:(223)  评论:(0)  加入收藏
一时想不开,想了解一下Go语言,于是安装了并体验了一下。下载1. 进入golang.google.cn 点击Download Go 2.选择对应的操作系统,点击后开始下载。 安装1. windows下执行傻瓜式安...【详细内容】
2021-05-12  程序员fearlazy  fearlazy  Tags:Go语言   点击:(236)  评论:(0)  加入收藏
1.简介channel是Go语言的一大特性,基于channel有很多值得探讨的问题,如 channel为什么是并发安全的? 同步通道和异步通道有啥区别? 通道为何会阻塞协程? 使用通道导致阻塞的协程...【详细内容】
2021-05-10  程序员麻辣烫  今日头条  Tags:Go通道   点击:(274)  评论:(0)  加入收藏
最新更新
栏目热门
栏目头条