最近golang写项目,遇到一些不爽的地方。
+ 不支持oo继承,通过组合,只能has-a,不能is-a。只能定义interface 来达到 is-a的目的。
+ int转float都要强制类型转换,不能自动转换。这种不会丢失精度的,可以自动转换。
+ 不能明确知道那些struct实现了哪些interface,这一点只需要在生成doc文档时,能够说明就好。
+ 不能定义struct类型的常量。
+ 还有go生成动态库-linkmode=shared时,供第三方调用时,还需要提供一份静态库+空go文件,才能调用。这个应该可以再智能点。
+ 还有一点 import 需要加双引号。