CRUD
CRUD通常指数据库的增删改查操作,本文详细介绍了如何使用GORM实现创建、查询、更新和删除操作。
如果是使用brew安装软件导致系统各种问题,使用Mac自带的迁移助理,虽然可以还原系统,但是之前brew安装的残留文件并不会删除,唯一的方法只能是command+R打开实用工具,把电脑的系统分区和数据分区都删除,然后重装系统,重装完毕后,再还原时间机器里的某个备份。如果删除分区后关闭电脑,再次command+R打开实用工具,此时的实用工具是一个非常老的版本,无法使用。此时需要在系统启动的时候,同时按住Option+command+R打开实用工具。
虽然现在我们使用的大多数软件都是可视化的,很容易上手,但是这并不代表 CLI(命令行)应用就没有用武之地了,特别是对于开发人员来说,还是会经常和 CLI 应用打交道。而 Golang 就非常适合用来构建 CLI 应用,下面我们就将来介绍如何在 Golang 中构建一个 CLI 应用。
对于开发人员来说平时可能就需要使用到很多 CLI 工具,比如 npm、node、go、python、docker、kubectl 等等,因为这些工具非常小巧、没有依赖性、非常适合系统管理或者一些自动化任务等等。
我们这里选择使用 Golang 里面非常有名的 Cobra 库来进行 CLI 工具的开发。Cobra 是一个功能强大的现代化 CLI 应用程序库,有很多知名的 Go 项目使用 Cobra 进行构建,比如:Kubernetes、Docker、Hugo 等等
控制并发有两种经典的方式,一种是WaitGroup,另外一种就是Context,今天我就谈谈Context。