要想成为一名合格的泥瓦匠,我们理应管理好手上的工具,对于趁手的工具需要即用即拿,这在工作中会带来事半功倍的效果。

所以,今天我们讨论一下如何用 Dash 管理以及同步代码段(code snippets)。

泥瓦匠和作家的工具

在之前的开发经历中,我并没有代码段的意识,一是项目做的少,需要复用的少,二是我那时认为一个优秀的开发者应该记住实现的原理而不是实现的代码,all is in mind。随着工作的规范以及工作量的增加,才开始意识到,好记性不如烂笔头。

一些优秀的文字作品里,我们往往能发现作者援引很多精彩的段落,这些句子关键时刻给文章增色不少,认知比较浅薄阶段,我会感叹这位作者的记性真是好啊,直到看过作家的写作过程才意识到,好文好句的使用不是因为作家的记性好,而是因为他们的笔记做的好,在需要时,可以快速找到相关的内容,进行参考,前期花费时间精力进行整理,使得后期可以高效复用,一劳永逸。

开发者的代码段就是作家的笔记,在开发量比较大的情况下,会出现很多高频场景,每个场景对应一个实现方式,我们不妨尝试记下这种方式,并在后面再次遇到时进行复用,并且对这种方式进行完善,形成最佳实践

关于 Dash

Dash 作为体验极佳的 API 文档浏览器的同时,也拥有优秀的代码段管理功能。通过添加代码段,进行命名,打 tag, 让代码段可以快速被检索到,配合 Alfred 体验更佳。

Dash Snippets

为什么选 Dash

在选择工具时,首先考虑是否满足基本需求,首先代码段检索速度必须快,即用即拿,其次必须是可以同步、备份。

Github 和 国内的 Coding 的都提供了 Gist 服务,这个服务首先解决的是同步问题,线上保存,方便同步和分享,但检索功能受制于网络和客户端,Github Gist 虽有信仰充值,还有体验优秀的开源的客户端 Lepton 支持,无奈 DNS 被污染,间歇性 timeout,导致体验很差,Coding Gist 虽然速度快,但没有客户端支持。

随后搜到 Dash 早在 2014 年就实现同步功能,不过方式是通过用户自己同步库文件的方式进行同步,聊胜于无。

同步配置

preference > Snippets > Snippet library location 中设置库文件(dash 后缀的文件)的路径,如果已经有库文件了,直接指向即可,下面我们介绍还没有库文件该怎么做。
可以看到 Save as… 按钮前面有一行提示 To sync, save your library into Dropbox

  • 首先保存现有的库文件到你的自动同步文件夹,自动同步的网盘可以选择 DropBox、Google Driver 或者国内的坚果云。(我用的是 Google Driver)
  • 保存后,再看库文件的配置路径已经自动指向保存的目录
  • 库文件所做的任何更改都会通过 云盘同步
  • 在新设备中,只需要将云盘中的库文件拉下拉,Dash 指向目录即可同步

总结

工具只是辅助作用,内容有积累,所做的工作才会有意义,不可本末倒置。