Hello World
Spiga

标签:Go

为什么我不喜欢Go语言式的接口(即Structural Typing)

2013-04-10 18:37 by 老赵, 17141 visits
摘要:所谓Go语言式的接口,就是不用显示声明类型T实现了接口I,只要类型T的公开方法完全满足接口I的要求,就可以把类型T的对象用在需要接口I的地方。这种做法的学名叫做Structural Typing,有人也把它看作是一种静态的Duck Typing。除了Go的接口以外,类似的东西也有比如Scala里的Traits等等。有人觉得这个特性很好,但我个人并不喜欢这种做法,所以在这里谈谈它的缺点。当然这跟动态语言静态语言的讨论类似,不能简单粗暴的下一个“好”或“不好”的结论。 阅读全文

为什么我认为goroutine和channel是把别的平台上类库的功能内置在语言里

2013-04-09 13:52 by 老赵, 12209 visits
摘要:这几天看了《Go语言编程》这本书,感觉一般,具体可见发表在图灵社区里的书评。书评里面我提到“Go语言的goroutine和channel其实是把别的语言/平台上类库的功能内置到语言里”,这句话当然单单这么说出来是没什么价值的,于是我也就趁热把它说得再详细一些。我的看法简而言之是:由goroutine和channel所带来的主要编程范式、设计思路等等,其实基本都可以在其他一些平台中配合特定的类库来实现。 阅读全文
1
使用Live Messenger联系我