go 隐藏了底层实现细节,不用像c那样直接操作底层,也不用手动回收垃圾,代码更容易预测和理解,程序也不容易崩溃。但有时候为了更好的性能或者go无法实现的操作,就需要挣脱go的这些束缚,直接进行底层编程了。
注: 底层编程属于黑魔法,虽然可能功能很强大,但是也容易误伤到自己。三思而行
热爱技术的教主大人
go 隐藏了底层实现细节,不用像c那样直接操作底层,也不用手动回收垃圾,代码更容易预测和理解,程序也不容易崩溃。但有时候为了更好的性能或者go无法实现的操作,就需要挣脱go的这些束缚,直接进行底层编程了。
注: 底层编程属于黑魔法,虽然可能功能很强大,但是也容易误伤到自己。三思而行
现在的程序开发都基于各种包或模块,可能一个程序我们写几行代码即可,其他功能都可以通过开源的包来实现。
但是 go 的包感觉也是比较烂的,不像 node 的 npm 那样 semver(语义化版本) 管理模块,而是通过 git 手动管理。
多线程是我一直没触碰过的领域,特别是js一直都是单线程,不过h5里有个 Worker 不过我还没实际用过。
Go 提供了 Goroutines 实现并发程序,而且使用简单,他和传统线程还是有区别的,具体我也不知道,还没看到。
接口类型是对其它类型行为的抽象和概括,我的理解是,可以更方便的处理不同类型数据。在 js 里没有特别的明确数据类型,比如 1 + '2'
是 '12'
而 1 - '2'
是 -1
,在 go 里这样的语句是错误的。
接口的概念非常多,小章节是之前每个章节的2,3倍。