双链的意义在于多出来 反链 这个结构。如果仅有 正链 的话,我们需要先想出一个类别、标签或者标题,然后再在这个宏观概念下面扩充具体的内容。举个例子,当我去想去写一篇 POSIX 的文章的时候,我会去想 POSIX 的历史,组成,应用,意义 4 个方面(相当于四个标题),然后根据这 4 个方面去收集信息。但是这种传统方式方式的难点在于这 4 个方面太宏大了,而且一起写太累人了,所以就不想写了。哪怕写好了,突然有一天我对“POSIX 的名字由来”进行了充分的研究,我在这篇木已成舟的笔记里也很难找到恰当的地方写下新的体会。
而反链则提供了另一种思路,我不再考虑我要写一个 POSIX 文章了,只是建立一个空笔记,而是我在写其他笔记的时候,比如说“ man
的用法”,或者“Unix 的设计哲学”,我都会提到 POSIX ,我会建立多个从其他笔记指向 POSIX 这篇笔记(虽然这篇笔记本质上一个字都没有,只是一篇空文档)的正链。随着日积月累的记录,指向 POSIX 的笔记会越来越多,直到有一天,我决定写 POSIX 的笔记了,这个时候我去查看 POSIX 的所有反链,会发现我以前日积月累下来与 POSIX 相关的笔记,如此,我可以基于这些笔记更好地去写这篇 POSIX 的笔记了。
也就是说,双链提供了一种自下而上构建笔记的方法。