软件设计的哲学
1 前言 知道这本书是因为在 Hacker News 上有人提问:你读过最好的技术书是什么 1? 最高赞的书是 Design Data Intensive Application(DDIA, 即《数据密集型应用系统设计》2), 我觉得 DDIA 也当得起这个赞誉,然后最高赞的回答顺势提到了 A Philosophy Of Software Design 3, 想来能与 DDIA 齐名的书,肯定不会差得哪里去。 ...
1 前言 知道这本书是因为在 Hacker News 上有人提问:你读过最好的技术书是什么 1? 最高赞的书是 Design Data Intensive Application(DDIA, 即《数据密集型应用系统设计》2), 我觉得 DDIA 也当得起这个赞誉,然后最高赞的回答顺势提到了 A Philosophy Of Software Design 3, 想来能与 DDIA 齐名的书,肯定不会差得哪里去。 ...
项目 GitHub 地址: Build Manager 1 前言 以 C 语言为例,一个程序通常由多个源文件 .c 组成, 每个源文件需要先编译成目标文件 .o, 再链接成最终的可执行文件。 如果只改动了其中一个源文件的内容,理想情况只需要重新编译并重新链接改动文件,而非从头构建整个项目(所谓的增量编译)。 ...
项目 GitHub 地址: Page Template 1 前言 在现代网站开发里,内容与表现的分离已经成为基本准则(Separation of content and presentation), 比如 HTML 就是负责内容展现,而 CSS 就是负责页面的样式。 ...
1 缘起 在《软件那些事儿》播客采访听众故事的系列里面,有一期名为《No.502 跟35岁的程序员聊聊比特币》1 长达三个多小时的播客,主人公分享自己与比特币的故事,还谈到其在2020年卖房买比特币的故事。 ...
项目 GitHub 地址: Regex 1 前言 所谓的正则表达式,指的是由一系列字符和特殊字符组成的模式,用于描述要匹配的文本。 最开始是一位叫 Stephen Cole Kleene 的数学家用被他称为 Regular Events 的数学表达式来描述这一模型,在 1968 年,由C语言之父 Ken Tompson 将这个表达式引入到行编辑器 QED, 随后是 Unix 上的编辑器 ed (vi 的前身) ,并最终引入到 grep. ...