发布网友 发布时间:2022-05-13 05:50
共1个回答
热心网友 时间:2023-07-26 01:02
先说感受到的先进性:
语法非常简洁,有种在学 C 语言的感觉,学习过程觉得很轻松,没有太陡峭的曲线,但语言也完全够用
自带工具就非常强大,而且各 IDE 和 Editor 都能集成,开发工具完全不是问题
go get = git clone + go install ,从 github 上直接 clone 下源码,编译出 .a 包文件和安装 bin 到 $GOPATH ,就可以本地任意地方使用了。反观 npm ,相信很多人不知道 NODE_PATH 的存在。
gofmt 代码风格统一,码农们再也不用为空格与 Tab 争吵了
go test 支持 benchmarks 和覆盖率测试
godoc 查看文档的工具。支持本地执行 godoc -http=:8080 后就能在浏览器中访问 golang.org 的本地 copy 版,对被墙的同学是个不错的选择
支持 Github ( Gitlab 等也可以)远程包,不需要发布到类似 npm 那样的地方
并发用协程和 channel 非常容易写,业务逻辑中可以尽量避免回调
部署非常简单,可以运行二进制文件,也可以通过 go get 来安装 bin ,运维起来非常方便
API 稳定,据说从发布到现在语法基本没变,只是 Go 内部做了改进和优化
本人还用 Swift 写过 iOS ,发现 Swift 似乎是从 Go 身上学了不少东西。。
劣势:
G...FF..WWW ,想下个 pkg 安装文件非常困难,最后是通过 brew 下载的
国内资料少(这么简单的语言,似乎也不需要什么资料)
社区小不如 npm ,国内想找个工作更是困难
不确定性:
性能与 Java 比如何,相当于什么水平
综上所述,感觉 Go 确实是一个目前比较理想的开发工具,大家一起讨论讨论,人生苦短,为何不用 go ?