分类:大佬の文章

Git 原理入门

Git 原理入门
Git 是最流行的版本管理工具,也是程序员的必备技能之一。 即使天天使用它,很多人也未必了解它的原理。Git 为什么可以管理版本?git add、git commit这些基本命令,到底在做什么,你说得清楚吗? 这篇文章用一个实例,解释 Git 的运行过程,帮助你理解 ...

Lua GC 的工作原理

Lua GC 的工作原理
上次在 blog 上写 Lua GC 是 2011 年,lua 5.2 尚未发布时候的事情了。我认为仔细研读优秀开源代码是非常值得做的事情,但把研读过程写出来却意义不大。代人咀嚼这事吃力不讨好,每个人的技术背景不同,写得过细浪费阅读时间,写的粗糙又会使读者不得要领。一行行读代码...

macOS Finder 之快速在终端进入选中的文件夹

macOS Finder 之快速在终端进入选中的文件夹
日常操作中,如果遇到想在终端进入一个文件夹的时候,我之前的做法是:把这个文件夹拖到终端里,然后再 cd 进去。事实上,在 macOS 里,还有更方便的做法,那就是利用「服务」。 首先去「系统偏好设置」-「键盘」-「服务处」,找到「新建位于文件夹的终端标签页」打开设置,如果你愿意...

解决 LLDB 出现 “Couldn't IRGen expression” 的问题

解决 LLDB 出现 “Couldn't IRGen expression” 的问题
大半个月前在用 Xcode 10 Debug 的时候,遇到了 LLDB 完全不工作的问题。当时因为是小问题,于是就以「不 DEBUG」的形式绕了过去。今天在写代码的时候觉得不用 LLDB 不行了,于是花时间解决了一下。 这个问题是这样的,在 LLDB 里,无论 po 或者执行其...

每周分享第 25 期

每周分享第 25 期
这里记录过去一周,我看到的值得分享的东西,每周五发布。 上周我看到一个报道,9月23日是安卓手机的十周年纪念日。 十年前的2008年9月23日,HTC 发布了世界上第一台安卓手机 G1,3.2英寸屏幕,320×480分辨率,256MB内存, 1150mAh...

使用 ffmpeg 来对音频文件(mp3、m4a 等)进行分割

使用 ffmpeg 来对音频文件(mp3、m4a 等)进行分割
有时我们需要切割一个较长的音频文件,而不想重新编码它,怎么才能达到这个目标?万能的 ffmpeg 非常适合用来做这个。 只需要一条命令: $ ffmpeg -i somefile.mp3 -f segment -segment_time 300 -c copy out%03d....

RESTful API 最佳实践

RESTful API 最佳实践
RESTful 是目前最流行的 API 设计规范,用于 Web 数据接口的设计。 它的大原则容易把握,但是细节不容易做对。本文总结 RESTful 的设计细节,介绍如何设计出易于理解和使用的 API。 一、URL 设计 1.1 动词 + 宾语 RESTful 的核心...

每周分享第 24 期

每周分享第 24 期
这里记录过去一周,我看到的值得分享的东西,每周五发布。 (题图:浦东滨江,上海,2018。) Hacker News 上面,有人问:”新人进入软件行业,应该学什么?” 很多热心人提供建议。有人说: “你应该好好学习一门语言。精通...

绕过微信不支持检测 HTML History PushState 变化的问题

绕过微信不支持检测 HTML History PushState 变化的问题
去年我在做一个 Web 项目的时候,发现「微信的内置浏览器不支持检测 HTML History PushState」,导致一些麻烦的事情。到了今年我发现微信依然没有解决这个问题,于是写篇 Blog 记录一下。 什么是「不支持检测 HTML History PushState」?...

每周分享第 23 期

每周分享第 23 期
这里记录过去一周,我看到的值得分享的东西,每周五发布。 (题图:鲁迅公园,上海,2018。) 很多人都说,当今社会趋向阶级固化,贫穷世袭。这种说法有根据吗? 纽约大学的社会学家就做了一次调查,企图给出实证数据。最近,他们公布了结果。 社会学家按照收入,把所有美国的职...