Go语言学习笔记

Reading time ~1 minute

之前有看过Go Tour ,一知半解的。后来花了两天基本上就能编写Go并完成一些基本工作了。想来Go的入门门槛还是挺低的。其实就差不多看了一本70多页书《An Introduction to Programming in Go》,当天看完第二天就慢慢熟络Go了。

之前很想再好好温习一下C/C++,不过现在有Go就发现没那个必要了。有人说Go是C和Python的结合体,这个我也部分赞同:既有C的高效,又有函数式语言的便捷;并且有C和Python的基础,学起来易如反掌了。直接编译成二进制文件比依赖VM(如Java、C#)或运行环境(如Python)的其他语言啥的都好多了。个人使用起来,有如下几点感受:

  1. 并发的高效和方便性。Goroutine协程的轻量级(保证资源占用尽量的少),加上编程过程中调用的便捷(go关键词后加一个函数调用即可),让Go成为服务端的新秀。Channel作为消息传递,也是并发中通信所必须的。

  2. 整合了不少函数式语言的特性,保留指针以尽量降低内存消耗,默认Unicode支持,Go实现GC(不过也有不好的地方,比如分配超过32K的对象时才会触发GC,如果用完大内存后想释放也比较麻烦),语言简捷(没有复杂的OO,但Struct及Interface已然覆盖所有)

另外使用过程中发现,Go对简单函数,如返回primitive的函数都会编译时自动inline,比Scala总得显式声明的好。

Original post: http://blog.josephjctang.com/2014-09/go/

2016 記

2015 年做的和沒做的,也大體記錄在了[這裏]({% post_url 2016-01-01-annual-review-and-planning %})。匆匆一年已逝,幾多慨嘆,幾多欣喜。後面列列過去已經做的,以及相對的未來一年的TODO list。主要也是從工作上的個人提升,以及生活上的...… Continue reading

《神经网络》课程笔记

Published on November 06, 2016

搜索广告机制设计

Published on November 02, 2016