(小房子出版社)Go语言出生在谷歌和作者Rob Pike Ken Thompson和罗伯特\u2022Griesemer三大师在计算机领域。由于其著名的背景,吸引了大量的关注开发商出生以来。十年自成立以来,许多Go-based应用程序已经出现。不久前,知乎也放弃了Python和转向去重构推荐系统。杰克威尔逊,谷歌前员工,相信熟悉的Python相比,语言有许多优秀的特性,可以取代在许多情况下,Python。他已经习惯去代替Python在许多任务。所以去语言有什么样的独特魅力?在Python的优势是什么?让我们一起看一看!来自一个著名的语言,无疑是非常困难去动摇编程世界的常青树。Java已经站了二十多年。

有什么好呢?对于许多任务,我用语言而不是Python,给几个例子:处理云日志存储在S3 bucket之间移动TB-level文件和\/或区域在S3, S3上匹配本地数据库记录和文件大多是一次性任务,确保文件保持同步状态,所以它更适合使用脚本语言操作。这些任务需要迅速被编程,代码通常使用一次后被丢弃。一般来说,这个任务的要求是相对新颖,专业,和很少的代码需要被重用。让我们介绍一下为什么去语言可以代替使用Python这样的任务。编译器是非常方便的。我经常使编写Python时非常低级的错误。我给错了名字变量或函数,或错误的参数传递给他们。这些错误可以找到部分调试工具,但这些工具通常需要特殊设置。我从来没有配置pylint轻松,我不喜欢使用那些沉重,更麻烦的ide。

脚本可能会遇到这个错误之前几个小时,然后一切都崩溃,你必须从一开始就运行脚本。大多数的这些错误可以被单元测试,但很少覆盖100%的代码,单元测试,我不想浪费时间编写单元测试脚本,只使用一次。语言与编译器可以解决上述问题。编译器可以检测所有的低级错误。出于这个原因,我更喜欢使用这样的语言写作时数百行代码。然而,发展速度的一个缺点需要编译的语言通常是你的发展速度将会下降。这是特别明显的语言如C \/ c++和Java。而去是一个非常简单的语言,我发现它的发展速度没有减慢。别误会我,我不意味着它是快于Python,但我想说,语言并不比Python慢得多。一般来说,这是没有问题的Python实现85%的发展速度。

更好的并行性你可能已经知道语言出生并行。在我的团队中,并行程序往往需要因为我们需要操作大量的数据在我们的数据库S3。如果任务是IO-intensive(事实上很多任务),我们可以很容易地部署Python线程。但如果cpu密集型任务,更方便使用Python,因为全局解释器锁的存在。我非常喜欢清爽的感觉,简单的代码可以运行在多个线程修改。我不知道你是否遇到过这样的问题在Python中:多线程代码,直接复制粘贴不工作。去语言中不存在这样的问题。简单的部署。我喜欢把所有依赖项在一个二进制文件。我经常在EC2服务器上运行自己的脚本,使环境更接近我们的服务器在S3。如果我使用Python,我需要确保所有必需的包是安装在服务器上,和我的同事不能在服务器上安装任何冲突的方案。

我通常在Mac和Linux保存我的代码,将其复制到远程服务器,然后让它运行。我的代码所需的所有依赖项都在一个二进制文件。一致的风格开始,Go语言格式化工具Go真的把我逼疯了,特别是当它需要tab键而不是空格键时缩进代码。我认为这是疯狂的。但我使用它一段时间后,它开始\u201C很香\u201D。编写代码时,我可以尽我的风格,格式化工具会为我做一切。我所有的代码风格是一致的,即使我写不同的项目。这是因为格式化特性的标准工具。但是如果我想要实现这一目标在Python中,我必须努力工作。我需要配置pylint工具正确,并确保在每个项目中使用它。更方便的工具Go只是一个小例子很多工具的语言。所有编辑器我喜欢use-VSCode, vim和崇高的文本有相应的扩展语言,让我轻松地享受去工具的优势。

我从来没有这样的经历,当使用Python。当然,Go语言有其缺点。每次我看到的一篇文章批评语言,这几乎是所有缺乏关键特性的语言,比如泛型。我认为无影响generics-you会发现使用地图和片(片)可以达到惊人的操作。但我遇到了许多其他问题过程中使用的语言。缺乏灵活性,首先,Go语言可能是最\u201C顽固\u201D我所使用的语言。例如,除了强迫你使用制表符而不是空格缩进(假设你使用go的工具),它将迫使你使用一个特定的文件组织结构,它也会迫使你项目GOPATH环境变量,等等。这种语言有太多难以改变的特性。的一个原因是很容易学习,你不能改变这些特性。如果你不想导出所有大写字母的变量名,我真的很抱歉。

相反,Python灵活得多。库支持有点差。这有点不公平的比较和Python在这方面去。经常出现晚于Python,但当我发现有些功能是不支持的,我仍然感到困惑。我甚至发现,许多人在StackOverflow应该内置函数的代码片段,和每个人都需要这个功能,所以他们的代码复制并粘贴到他们的项目。不应该这样的功能是嵌入式的语言?说到此,我认为近年来两个例子:排序片(幸运的是这是更方便的版本)只支持整数,并且不能圆的浮点数(例如,如果你想找到最接近的整数,就语言不能这么做)。之前的版本,没有功能。当然,这些问题的部分原因是,语言没有泛型,和部分是因为开发人员只最必要的功能添加到标准库。我理解这两点,但我仍然觉得生气当我必须编写代码来解决一个小问题。

你喜欢的人,去和Python吗?欢迎留言!

再见python你好go语言_再见,Python!你好,Go语言相关推荐

  1. python是后端语言还是前端语言_从前端到后台-语言选择

    截止至2019年10月,TIOBE编程语言排行如图所示 这里重点考虑前三种语言和JS.C作为底层语言直接忽略,主要对JAVA,Python和JS进行对比. JAVA: 强类型静态语言,入门较Pytho ...

  2. 计算机python语言_计算机语言Python解释器

    [TOC] 1.计算机语言的分类 1.1机器语言 由于计算机内部只能接受二进制代码,因此,用二进制代码0和1描述的指令称为机器指令,全部机器指令的集合构成计算的机器语言 机器语言属于低级语言 1.2汇 ...

  3. python是面向对象还是面向过程的语言_关于python是面向对象还是面向过程的分析...

    关于python是面向对象还是面向过程的分析 发布时间:2020-04-07 16:10:55 来源:亿速云 阅读:24 作者:小新 今天小编给大家分享的是关于python是面向对象还是面向过程的分析 ...

  4. python 标准库 书籍_《Python标准库》Python语言的权威之作

    <Python标准库>由资深python专家亲自执笔,python语言的核心开发人员作序推荐,是Python的权威之作,书中对一百多个模块进行了生动的讲解.<Python标准库> ...

  5. 学python后还要学什么语言_除了 Python,为什么机器学习还需要一种新的编程语言?...

    原标题:除了 Python,为什么机器学习还需要一种新的编程语言? 编者按:任何足够复杂的机器学习系统都需要一个特定的.非强制要求.优弊共存的编程语言.如今 Python 虽然在人工智能领域应用广泛, ...

  6. python转换成c语言_把python转成c

    广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 推荐使用腾讯云 api 配套的7种常见的编程语言 sdk,已经封装了签名和请求过 ...

  7. python大牛 关东升_《Python从小白到大牛》第4章 Python语法基础

    本章主要为大家介绍Python的一些语法,其中包括标识符.关键字.常量.变量.表达式.语句.注释.模块和包等内容. 标识符和关键字 任何一种计算机语言都离不开标识符和关键字,因此下面将详细介绍Pyth ...

  8. python之禅 中文_《Python之禅》中对于Python编程过程中的一些建议

    <Python之禅>中对于Python编程过程中的一些建议 来源:中文源码网    浏览: 次    日期:2018年9月2日 [下载文档:  <Python之禅>中对于Pyt ...

  9. python编程小知识_分享Python开发中要注意的十个小贴士

    大家请注意:这篇文中假设我们都用的是Python 3 1. 列表推导式 你有一个list:bag = [1, 2, 3, 4, 5] 现在你想让所有元素翻倍,让它看起来是这个样子:[2, 4, 6, ...

  10. python出现的意义_[转]Python中下划线以及命名空间的意义

    Python 用下划线作为变量前缀和后缀指定特殊变量/方法. 主要存在四种情形 1. 1. object # public 2. __object__ # special, python system ...

最新文章

  1. 使用NuGet发布自己的类库包(Library Package)
  2. 华为云设计语言_华为又一项黑科技即将来临:可即时翻译任何动物语言
  3. java 课后习题 冒泡排序的运用
  4. 网络基础、多线程、ftp任务铺垫
  5. Eclipse+JBoss+MySQL开发环境设置全攻略
  6. python plot 时间_python – 在matplotlib中绘制时间与日期
  7. 自动移动鼠标避免锁屏
  8. Git使用小记——复制粘贴快捷键的修改
  9. python量化投资推荐书籍_有没有值得推荐的介绍有名的量化投资策略的书籍?
  10. 保姆级教学!Xcode 配置 OpenGL 环境
  11. 网易换肤第一篇:换肤技术解密!
  12. fastposter v2.6.2 发布 程序员专属海报生成器
  13. 阿里云新购服务器磁盘disk挂载完整教程
  14. 关于Java内存可见性的探究实验遇到的意外和happens-before
  15. 1300:鸡蛋的硬度
  16. 理解杀毒软件的意义(完整---另加补充和总结)
  17. 用git命令上传自己的代码到Azure devops Repo
  18. Microsoft SQL Server2000 四个版本的区别及下载地址
  19. linux 中.sh文件如何打开运行
  20. 【pygame学习_3】变节奏型壁球运动

热门文章

  1. NOIP 2018 兔纸旅游记
  2. java多属性的map_java集合(四)Map集合之Properties详解
  3. SAP - 采购价格确定 ①
  4. 关于Jquery使用的一些注意事项
  5. 一个服务器放多个网站seo,服务器建立多个网站 同一IP对SEO有影响吗
  6. BZOJ 5109 大吉大利,晚上吃鸡 Code+
  7. 常微分方程求解器ODE solver
  8. 国产手机再次发力,是否可以阻击三星苹果
  9. ubuntu16.04+Titan Xp安装显卡驱动+Cuda9.0+cudnn
  10. linux下修改tomcat默认访问主页