使用 Git 的一些经验

接触 Git 很久了,期间也看过各种博客,或浅显或深奥,但是看完依然不懂 Git,倒是最近用 Git 比较频繁,一点点也了解了,算是入了个门。

Git 非常强大,强大的同时伴随的时学习成本的提升。现在感触比较深的教训就是初学 Git 时不要想太多,把各个功能分离开来。我最初学习的时候总是在想如果我修改了一些工作区文件,然后切换了分支,那么工作区的文件会怎样?如果我撤销了修改,本地的暂存区会怎样?现在回想起来,其实有这种想法本身就是一个错误。

计算机中的一词多义

学习中常常遇到同一个词语出现在多个地方,其中有一部分词语让我相当的困惑:
为什么两个词是一样的,但是感觉没有什么联系?比如「闭包」。

通关 hacked 的 story 模式

十一返乡的绿皮车异常拥挤,漫长的旅途连一碗泡面都吃不上,百无聊赖之际想起手机里还有 hacked 这个游戏,这是我的手机中除了 chrome 的小恐龙之外的唯一一款游戏了,当初初学 C 语言,未能通关便放弃了,它就这样躺在手机里一年多,如今终于通关。

JavaScript 的求值策略

今天阅读红宝书,在 JavaScript 的求值策略中,作者说所有的函数参数都是通过值传递,这里跟其他的语言很不一样,为此我特地查了一下英文原版:

位运算进阶:异或

上一篇文章讲了基本的位运算知识,其实位运算中最神奇的莫过于异或了,来看一下异或运算的性质。
异或满足交换律,结合律,恒等律,归零律,以及有自反性质。

位运算入门

整理了一些网上关于位操作的知识,东拼西凑写出了这篇文章。
位操作的应用非常广泛,通常用在要求效率非常高的底层上。下面说一些简单常用的。
位操作包含取反(NOT),按位或(OR),按位异或(XOR),按位与(AND)操作。

漫谈字符编码

前言

计算机只能存储二进制的数据,所以字符也一样只能通过将字符映射为相应的二进制形式才能保存,读取的时候由系统对字符进行图形渲染。