golang语言有哪些不足?
golang语言有哪些不足?
-----
网友解答:
-----
学习使用Golang已经快两年了,Golang最大的特色就是支持协程。现在Golang越来越多地被用于构建高性能应用,这是其中的原因之一。
使用Golang处理异步任务非常方便,只需要一个go关键词和一个方法即可,如下:
go 方法()
Golang也有很多明显的不足之处,其中第一个是错误、异常处理麻烦,且不能跨协程捕获异常。在Golang中,你要针对每一个协程的异常进行单独处理,判断是否存在错误你需要使用很多像 err != nil 这样的语句。
第二个是没有一个比较成熟且好用的框架。在Golang中,很多框架基本都是半成品,你不能像使用PHP中的Laravel,Java中的Spring一样拿来直接就用,你需要做很多基础性的工作。
第三个是对OOP编程不太友好。在Golang中没有类的概念,如果你想实现类的效果你只能借助struct结构体或type类型实现。
第四个是没有一个统一的代码归档标准。你可以看到很多项目有着自己不同的风格,比如,有MVC风格的,也有函数式编程的风格。所以这样你在阅读不同项目代码时,会发现非常吃力。
Golang是一个新兴的语言,还有很多不成熟的地方,以上几点也只是我在平时的开发工作中的一点小体会。你自己感觉如何,可能也只能等你自己亲自使用后才明白。
-----
网友解答:
-----
异常处理;
以及一些语法糖没有,比如三目运算不支持,if...else...即便是单行也要大括号;
常见函数式编程func没有官方库实现,比如你写惯了py会有map,filter等函数式的实现,但是go没有,需要你自己写...;
1.18版本引入泛型后实现不够优雅,那一个个的方括号,你再弄两个数据切片啥的入参和返回值,你的函数名就和shell正则表达式一样,可读性体验简直糟糕透顶!
go root的设定倍受吐槽...
-----
网友解答:
-----
[耶]
-----
网友解答:
-----
性能没有达到预期,奔着能接近C/C++的,实际也就那样。
-----
网友解答:
-----
语法什么的都可以接受。现在最不能接受的是:模块以二进制包形式发布时,.a文件兼容性很差,居然挑版本,挑小版本!逼着我发布源代码。这点对专业软件开发商很不友好。
------------------
推荐阅读:
下一篇: 经常眼睛干涩怎么办?