作者回复: ide/vim不会进行静态代码检查。 ide/vim的格式化是可配的。而且ide/vim的格式化更多的是用了gofmt -w这种格式化。 这里将格式化代码放在Makefile有个选择: 1. 更丰富,可配置的格式化代码功能,比如:支持golines、goimport、gofmt后面还可以根据需要增加更多 2. 确保每一个开发者用的都是同一种格式化方法(ide/vim的格式化不一定每一个开发者都会陪,更不一定配置的格式化选项是一致的) 将格式化放在Makefile中,可以确保某个动作一定会被执行,并且执行的效果是一致的。
作者回复: 直接copy可能更香
作者回复: 持续发布需要CI/CD系统的支持。 写好Makefile只能说方便CI系统直接调用。离CI/C差的还远
作者回复: 一个应用下面一般分多个微服务,我感觉放在一个Git仓库中好些。 放在一个Git仓库中,但编译出来的是几个二进制文件,所以部署还是独立的。 放在一个仓库中有以下几个优势: 1. 可以统一管理,比如静态代码检查,只需要维护一套就可以了,不用重复开发。 2. 便于阅读,不用去不同代码仓库中不断跳转。 3. 便于包共享,放在同一个仓库中,开发者能够更轻松的发现共享包,并且潜意识中,会去使用公用的包。 最大的优点是:编译统一维护管理,不用每个仓库都实现一套维护方法。 我觉得只要是项目都可以使用makefile管理。
作者回复: 我感觉Makefile没过时,kubernetes等大型项目都是用的Makefile。 Makefile功能强大,应对超大型的项目都没问题,对于一般的项目更不是瓶颈了。
作者回复: 也是自动生成的,iam中很多都是通过工具来搞的
作者回复: 可以加老师微信再帮你看下哈,这个报错看不出来什么错误
作者回复: 加老师微信,现场帮你定位下哈
作者回复: tools.verify.golines
作者回复: 还有些在Mac上开发。 这个教程没必要在Mac、Windows平台下都适配一份。 之所以选择Linux是因为以下原因: 1. 因为Windows、Mac、Linux都有开发者,但该教程只能选择一个平台,所以选择了Linux 2. 将来部署服务是在Linux上部署的,在学习时,在Linux上完成开发部署,也是学习Linux的一个途径,为将来工作中, 在Linux下操作打下基础