unity openupm 使用
官方文档
- 官方文档https://github.com/openupm/openupm-cli
- 中文文档https://github.com/openupm/openupm-cli/blob/master/README.zh-cn.md
使用前注意
版本支持
Unity 2019.3.4f1
及以上- node 6+
其实 unity editor 本身内置了一套 node 环境
基础使用
- 首先请安装好 node 12+
AOP in Android
AOP 是什么
AOP wiki Aspect-oriented programming, 意为:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。
是函数式编程的一种衍生范型。利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。
稀疏文件 Sparse File
稀疏文件介绍
稀疏文件,这是UNIX类和NTFS等文件系统的一个特性
例如:/var/lib/docker 目录,实际占用非常小,但是在系统里面看到的占用是 11G 的文件目录
go vendor 机制讲解
vendor 机制
vendor 是 go 1.5 以后支持的,1.6 默认开启,可以关闭则直接 在GOPATH下面查找依赖包
vendor 编译原则
vendor 原则:
- 当前包下有vendor目录,则从其下查找第三方的包,如果没有找到,则继续执行下一步操作
- 当前包目录下没有vendor目录,则沿当前包目录向上逐级目录查找vendor目录, ,直到找到 $GOPATH/src下的vendor目录
- go 1.12 以后,也默认开启 go mod, 那么如果 vendor目录没找到是不会去 GOPATH 寻找,则尝试 go get 如果失败则编译失败
- go 1.12 以前,在GOPATH下面查找依赖包
- 在GOROOT目录下面查找依赖包
故兼容的情况下,请使用 GOPATH 保证不出错,兼容 GOPATH 和 go mod 请设置环境变量 GO111MODULE=“on”
go mod 使用及技巧
首先
本文是建立在 go 1.12 及以上, 在 go 1.16版本成为默认构建模式,替代了原先的 GOPATH 构建模式 官方文档 https://blog.golang.org/using-go-modules
常用go mod命令
golang 编程规范 编程风格 整理
介绍
本文更多的介绍代码管理和检查工具而不是大篇幅风格文档,毕竟文档只能那里看,不如工具有时效性和可行性,毕竟说到不如做到
- 官方代码编程风格文档 https://golang.org/doc/effective_go.html
- uber golang 代码规范 https://github.com/uber-go/guide
- uber golang 代码规范中文 https://github.com/xxjwxc/uber_go_guide_cn
代码目录规范
目录结构 推荐目录结构 https://github.com/golang-standards/project-layout
GOPATH 设置规范
建议保留 GOPATH 规则,便于维护代码
- 建议只使用一个 GOPATH
- 不建议使用多个 GOPATH,如果使用多个GOPATH,编译生效的 bin 目录是在第一个 GOPATH 下
golang 在 1.11 以后,弱化了 GOPATH 规则,已有代码(很多库肯定是在1.11之前建立的)肯定符合这个规则