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/

时间管理中的断舍离

[TOC]## 理论篇“断舍离”概念因山下英子的《断舍离》一书而广为人知。如原书所述:> 断,就是让你的生活入口狭窄(断绝不需要的东西);>> 舍,就是让你的生活出口宽广(舍弃多余的废物);>> 离,就是通过断和舍,来脱离对物品的执着。>> 所以:断 + 舍 = 离。>> 断舍离的终极目的,是...… Continue reading

科學の上網的便捷方法

Published on February 03, 2018

2017 記

Published on January 02, 2018