作者:茹姐

链接:https://www.zhihu.com/question/300163211/answer/654447355

来源:知乎

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

说一下自己得想法哈!虽然自己一直在用go语言,但并不赞同一味的说go语言得好,清晰的认识每一个编程语言得优劣势才是正确之选。

虽然目前Go语言是很多项目重构的首选,但是还是有一些使用上的缺点。当然因为Go语言是一种年轻的语言,所以它仍在发展中,在未来还有很大的提升空间。而且Go语言团队,几乎每半年就更新版本,所以也能感觉到Go团队,在逐步的修改Go语言的一些不足之处。

  1. 缺乏框架

GoLang开发人员没有重要的框架。但是有其他语言。Ruby有Ruby on Rails,Python有Django,PHP有Laravel

2. 错误处理

如果可能出现错误,Go程序需要函数来返回错误。这可能导致错误跟踪丢失导致缺少有用的错误处理逻辑的问题。有些工具可以帮助检测这种错误,但它们更像是解决方法。开发人员还需要编写大量的if块来检查错误并处理它,这使得代码不那么干净。当然在go2草案中,据说已经要修改Go语言的错误处理机制了

3. 包管理

Go中的包管理并不完美。默认情况下,它无法创建具有固定包版本的依赖关系树,这意味着在不同时间构建时,创建的生成可能基于不同版本的包。相比之下,Python,NodeJS(npm)和Ruby都有相对维护良好的包管理系统。例如,在Ruby on Rails项目中,你可以拥有一个Gemfile文件,该文件定义依赖项及其依赖版本,这意味着即使将来某些版本的某些版本稍后会更新,也会使用相同版本的软件包来创建新版本。

最后,当你参与新项目或计划改进下一个项目时,Go绝对是一个不错的选择。一旦你习惯了Golang开发,就可以把它变成主流,因为与缺点相比,它的优势要大得多。

它可以帮助你在时间线和预算中构建复杂的应用程序,并且可以轻松处理每秒1000个并发请求,这在其他语言中可能是非常困难的。

转载于:https://juejin.im/post/5cb81657f265da03937861e5

go语言有哪些劣势?相关推荐

  1. php的缺点_深入解读PHP语言的优劣势,看清代码的本质

    PHP优劣势 PHP的优点: 1.第一个是简单,PHP比其他任何的语言都要简单,入门的话PHP真的是可以一周就入门.C++有一本书叫做<21天深入学习C++>,其实21天根本不可能学会,甚 ...

  2. 为什么go语言还没有火起来?go语言有哪些劣势?

    Go 是一门非常不错的编程语言,并且逐渐取代 Python 成为很多人的首选语言.但它也有一些缺点让很多开发者忍不住吐槽,比如它在函数式编程.通道 / 并行切片处理.内存垃圾回收.错误处理等方面都有一 ...

  3. R 语言的优劣势是什么?

    R,不仅仅是一种语言 本文原载于<程序员>杂志2010年第8期,因篇幅所限,有所删减,这里刊登的是全文. 简介:R是什么 转帖:来自<程序员>上的一篇文章,希望对大家有帮助 工 ...

  4. java与c语言的优劣势_C语言和Java的优缺点

    2 C语言的可移植性不高(主要针对于java.Java 程序在哪个机器上都可以运行,而且结果一模一样.而C语言就不行,C程序在其他机器上不一定能运行.而且就算能运行,结果可能也不一样.) java: ...

  5. rstudio python_如虎添翼:用Python与C++扩展R语言的应用场景

    R语言是心理与统计学界中最受欢迎的编程语言之一.相比商业统计软件,R语言免费.开源.扩展性强:而相比其他开源编程语言,R的基本操作相对简单,统计与作图模块完善,适合进行统计分析工作. 然而,R语言并非 ...

  6. 为什么要是用R语言?

    关于R语言的优劣势详细了解: 大数据之R语言速成与实战 为什么选择R? 丰富的资源:涵盖了多种行业数据分析中几乎所有的方法. 良好的扩展性:十分方便得编写函数和程序包,跨平台,可以胜任复杂的数据分析. ...

  7. 如何客观的评价 Go 语言

    我是从 2015 年开始接触 Golang,并在之后开始在某出行公司的线上环境大规模使用,同时个人还利用个人时间深入研究过 Golang 的底层实现机制,包括内存管理.GC 机制.Runtime Sc ...

  8. JAVA与GO语言哪个更容易学?

    一,GO语言的优劣势 Go开发中的痛点 编译慢,失控的依赖,个工程师只是用了一个语言里面的一部分,程序难以维护(可读性差.文档不清晰等),更新的花费越来越长,交叉编译困难 Go语言的优势 学习曲线容易 ...

  9. Ruby DSL介绍及其在测试数据构造中的使用(1)

    什么是DSL?英文全称Domain Specific Language,中文解释为领域专用语言.顾名思义,DSL是针对某个特定领域而开发的语言.像我们平时接触到的C/C++,Java,Python/R ...

最新文章

  1. navicat 几个 可用的东西
  2. Ardino基础教程 1_让Arduino说出HelloWorld
  3. Swift 3 网络请求+数据解析
  4. VTK修炼之道45:图形进阶_vtkPolyData属性数据
  5. js事件流、事件代理等
  6. VB 中定义FileSystemObject对象,要先添加对象
  7. C++ 使用正则表达式拆分字符串
  8. 利用python画简单图形示例代码_使用python画社交网络图实例代码
  9. 笔记14:STM32F4之电容触摸按键
  10. 设计师工资低?10大网站助你快速涨1万身价
  11. beautify配置
  12. python有一对兔子,从出生后第3个月起每个月都生一对兔子
  13. mybatis 一对一、一对多、多对一、多对多
  14. LeetCode 2203. 得到要求路径的最小带权子图(dijkstra算法)
  15. MTK之Flash篇二---如何调整Flash中FAT的配置
  16. 如何优雅的写 Controller 层代码?找对姿势!
  17. 特别提醒:人脸识别时,一定要穿衣服,一不小心就中招了
  18. “大数据治理”专题导读
  19. magento Shopping Cart Price Rule 购物车促销规则
  20. 数仓工具—Hive源码之SQL解析AntlrWorks的使用(10)

热门文章

  1. 《阿里巴巴 Java 开发手册》读书笔记
  2. Android 一些比较厉害的大牛博客
  3. 分析chrome中的network面板
  4. JAVA虚拟机关闭钩子(Shutdown Hook)
  5. 原来小清新色调是这样调出来的~
  6. 数据结构之并查集Union-Find Sets
  7. 【Machine Learning实验2】 Logistic Regression求解classification问题
  8. Linux内存管理Linux Memory Management Notes
  9. java中的深浅克隆
  10. 用Maven构建Mahout项目