go 里面想要实现一个接口,只需要实现这个接口中的 所有方法即可。这种方式看起来很简洁,但是却不利于后期的维护。因为没有显式的指明实现的接口,一旦对接口做了修改,其他所有已经实现了该接口的类型都会失效。最近在 goframe 的终端工具 gf 的源码中看到了检查一个类型是否实现某个接口的方法,简单有效
Go 多版本安装
工作中做 go 开发的时候,经常会遇到本地比打包机的 go 版本新的情况,而有些特性或者功能又只包含在新版本当中,导致时有打包失败的情况发生。比如,经常会出现的一个问题就是 ioutil 这个包在 1.16 之后已经被废弃了,其中的一些方法也转移到了其他的包中,我脑海中一直有这个印象,所以就下意识地避免使用 ioutil 这个包,但是因为打包机使用的是 1.15 版本,所以我下意识的避免反而造成了打包失败。在这种情况下,最好的方式就是将本地项目的开发环境切换到 1.15。好在官方1也提供了安装多版本的方式
Github Action 自动修改文章的更新日期
我博客写的多是一些偏向于技术或者工具使用方面的文章,随着技术或者工具的更迭,我也需要时不时地更新一下历史文章。在没有使用 action 之前我一直是手动修改文章更新时间,这种方式虽然可行,但是多少有点繁琐。在使用 action 自动部署博客之后,我就想能不能通过 action 自动修改文章的更新时间
VSCode 自动补全 Python 的函数括号
目前 VSCode 对 Python 的支持已经相当好了,比如各种提示、补全、跳转、调试都是完全没有任何问题的
在 VSCode 中写 Python 的话,我一般会安装两个插件
- Python:提供对 Python 开发的支持
- Pylance:提供对 Python 一些智能补全方面的增强
不过在 VSCode 下写 Python 有一个比较蛋疼的点,就是补全函数的时候仅会补全函数名,而不会自动补全后面的括号
Windows 包管理器 —— Scoop
我很喜欢 Linux 软件的安装方式,如果一个软件存在于软件源中,只需一行命令就可以安装好这个软件,而且大多数时候也不用担心下到什么流氓程序。所以当我有了一台 Windows 的电脑之后,我也尝试去寻找 Windows 下是否也有类似的工具,最终,我找到了 Scoop