看了一个 go 语言,感觉语法略为不习惯。

2016-01-27 09:42:17 +08:00
 fire5
还是大 python 舒服。。
21525 次点击
所在节点    Python
151 条回复
tairan2006
2016-01-27 12:31:22 +08:00
go 设计的有点过于简洁了…所以有些隐藏的坑。
Rust 语法设计的过于复杂了,自从学过 C++后对这种玩意儿有点累感不爱, scala 也是。。
htfy96
2016-01-27 12:37:57 +08:00
@chrishine +1 几个月前看 Go 的 JSON 库还是在用 interface{}作为 write 的参数,全部放在运行时搞,效率太低
zts1993
2016-01-27 12:53:27 +08:00
go 的最大败笔 “ go 脑残粉 ” +10086
hooluupog
2016-01-27 12:54:58 +08:00
可能是更多的写静态类语言,不论是写 Go 还是当初写 python 都是很快就能上项目了。
zhangchioulin
2016-01-27 12:58:56 +08:00
@mengzhuo 我是 ios 开发,想多学门语言学习 go 还是 python?还是 ruby?
chrishine
2016-01-27 13:06:06 +08:00
@zhujinliang 没试过这样,自己能做到的是修改以前的代码习惯。
morefreeze
2016-01-27 13:57:25 +08:00
@chrishine 求问如果我的函数总有个 error 返回值,而一般我在调用别的函数 if err != nil 我就直接 return err 这样的话 checkErr 咋写
fire5
2016-01-27 14:22:08 +08:00
@chrishine 但是这个特性,我已经想去日藏獒了。。。。。。。。。。。。。。。。。。。。。
sox
2016-01-27 14:23:32 +08:00
脚本语言当然更容易让人习惯。。
fire5
2016-01-27 14:24:03 +08:00
@fy 同感
chrishine
2016-01-27 14:24:19 +08:00
@morefreeze 我的话会 error 分级, switch case 决定是打印还是返回吧。
不知道你这里 return err 是为何,返回的 err 会在另一个函数里面进行处理么。
大概你是做集成之类的东西,有一个第三方库 A, B, C 等,用户 U 需要统一使用这些接口,所以不能处理 err ,只能将 A, B, C 的 err 继续抛给 U 让 U 去处理?除开类似的 facade ,我想不出为何要将 err 像 GPL
一样病毒式扩散。
chrishine
2016-01-27 14:27:54 +08:00
@chrishine 怎么 GPL 后面的文字另起了一行,虽然是想黑一下 GPL ,但也不想大写的黑一下。
fire5
2016-01-27 14:33:38 +08:00
@all 各位同学,这个话题不要讨论了。 吐槽下就行了,一不小心挑起语言之争,或者 python 大法好,意义不大。 感谢各位。
JohnSmith
2016-01-27 16:38:07 +08:00
@chrishine 有道理。但是只要返回值有 error 就不能避免 if err != nil {},你说的是错误在哪处理的问题,不是错误处理方式的问题
JohnSmith
2016-01-27 16:43:47 +08:00
@chrishine if err != nil {} 是一种形式,可以是 errHandle(err) or switch err{} ,根本原因是 error 做为值返回
herozzm
2016-01-27 16:47:07 +08:00
个人感觉 go 比 Java 难学
bobuick
2016-01-27 17:25:55 +08:00
@herozzm java 要是不了解那么一大堆设计模式, 当然是好学了。
golang 的 if err != nil 这种, 你用自己的 errHandle(err)有什么鸟区别, 只是原来 3 行变一行而已, 一样到处都是。
golang 我都是干脆 panic 处理,在外层做 recover , 自己写给自己调用的方法, 还特么 err nil 来 nil 去, 真是够了
GNiux
2016-01-27 18:06:01 +08:00
正在上手 python ,赶脚这种脚本语言 用这么多模块……虽然上手迅速,但不易让人真正理解编程思维……

其他语言才真正有料呵呵
zongwan
2016-01-27 18:17:36 +08:00
有没有人觉得 golang 的 import 管理很麻烦?
morefreeze
2016-01-27 18:32:35 +08:00
@chrishine 我所在项目 大部分时候都是对于调用返回的 error 直接 return err 掉,我想这应该挺常见的,不管你这层怎么处理,当发生 error 时,可能之后就没法执行了,那你只能往上返回了,再往上报个错

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/253629

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX