翻译:Go单元测试的一种模式

原文 A pattern for Go tests

我曾经花费了无数时间来思考到底该如何编写单元测试。

我去搜索了Go语言的单元测试模式

很多人通过外部依赖来使用断言。事实上,我认为类似 isNil(v interface{}) bool 这样的范型函数最开始确实能够提升开发速度,但是长远来看,我想如果 接受Go的强类型天性 而不是只想着回避它,会更加有意义。编写地道的代码对于提升质量和理解代码都有好处。

Surge配置文件生成脚本

问题

Surge作为现在苹果平台最强大好用的网络工具,在配置文件管理上还有一定的优化空间。个人这几年使用,感觉最大的问题就是不支持将代理服务器列表与规则配置分离,这样像共享自己的或者使用他人的配置就很不方便,并且如果Mac/iOS不共用一份规则配置的话也很麻烦。 在开发者刘亚晨给出解决方案之前,先自己用脚本简单的做下合并吧。

删除iOS系统里不再使用的证书文件

苹果早晚要完

以前因为强国网的关系,使用一些翻墙服务需要授信自签名证书。以前老版本的系统用户自行安装的第三方证书是可以在 Settings->General->Profiles 中直接删除掉的,但在iOS 10之后这个页面被取消了,设置中没有地方可以删除,只有开关选项决定是否信任。

翻译:该死的Git!

原文 Oh shit, git!

Git很难: 容易出错,还很难搞明白如何修复。而当你想通过搜索Git文档来寻求帮助时,又会陷入先有鸡还是先有蛋的困境:如果不是已经知道需要使用的解决方案名字的话,就没办法找出来解决方案。

下面用大白话列举了一些我曾经遇到的破事,以及最终是如何解决的。

移除Audible有声书的DRM限制

缘由

个人时不时的会在Audible网站买本有声书来听,既练听力也为消遣。有鉴于Amazon过去曾数次被爆直接删除用户图书,DRM保护也给平常使用增加了不便,所以还是希望能去掉限制,真正将付费购买的东西掌握在自己手上。

前两天机缘巧合下读到了移除 Audible 有聲書的 DRM,看项目代码才后知后觉伟大的FFmpeg项目早在2015年便已经支持了Audible的AAX格式转码,照着该博文实践并完善了一下Mac下的实作,总算可以转换出令自己满意的m4b文件导入到iTunes里面好好收听了。