我希望的Golang的feature

如果有下面的功能,Go可以让程序员更高效。

1. 数学类型的自动转换。现在做个整数跟浮点数的计算也要手动转类型。据说是为了更安全和可预测的代码。但是其他主流语言都支持自动转,大家早就习惯了。需要考虑类型安全的地方,该考虑的人自然会去考虑。

2. Polymorphism的支持。interface对多态的支持还是比较有限。down casting做不了有的时候还是不大方便。比如下面这段代码就编不过

type Base struct {
    xxxx
}

type Derived struct {
    Base
}

func main() {
    v1 := &Drived{}
    var v2 *Base

    v2 = v1 //编译不过
    v2 = *Base(v1) //也不行
}

3. 更方便的数组的操作比如Contains(这个很常用的东西没有实在是不方便),使用加号连接数组(每次要写append太不现代了),map(map和generator这样的东西有的时候用起来太方便了),排序(sort库使用起来还是不太方便)相比之下swift里面那个operator function就cool很多。

4. 更多的容器库,比如Set,SortedSet等

5. 动态链接库。刚知道的这个的时候还是有些吃惊,要取代C/C++语言,这个东西都不支持怎么可能?扩展起来岂不是很麻烦?

6. 更好的异常处理的支持。panic还是太麻烦,老是要敲重复的代码,手指头太累。

7. 带名字的参数表和参数默认值。这么好的东西干嘛不支持尼?

8. 宏。像__FILE__, __FUNCTION__这样的宏还是挺有用的。有些地方用宏定义可以节省很多代码。

9. 方法重载。跟7可以在一起实现。

10. 类方法。在方法名前加前缀也能模拟,但是很难看,不是吗?

11. 三元操作符。 x?x:x。不理解为什么不支持这个远古功能,忘了?


待续。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值