go新手强迫症患者的新建项目问题
我直接`go1.12`开始,使用`module`来做包管理和包版本控制。
我特么竟然不知从何下手。按照正常思路,我直接创建一个项目,比如一个`todo`项目,然后用`todo`作为项目的根目录文件夹。这个`todo`文件夹我可以放到任何地方。
但是我看了个什么大都数都是有个`gopath`,然后在`gopath`下面有`pkg`、`bin`、`src`文件夹,`src`文件夹下面才是各个项目,比如`todo`。
这种固定的方式,我感觉受到了一万点伤害,内心极其不舒服。
新手问:
我的`todo`是不是可以随便放到放,我不想专门要放到一个`gopath`下面的`src`下,我就想这样放:`d:/todoProject`、`d:/blogProject`。
而且我的理解就是在以前使用gopath的时候,我们也不一定需要将代码放在src下面,不管代码在哪里,都会从系统环境下的gopath去引用包。
现在使用`module`不一定需要`gopath`,道理也是一样,需要的包默认下载缓存到`gopath`的某个目录下,但是我的项目自己编写的代码可以随便放,不一定要在`gopath`下面的`src`文件下面。
我看大多人的代码都是有一个专门go的工作区,把这个工作区当作gopath,然后有个src文件夹,各种project放在src下面。这个方式我感觉心里好难受。
设置一个gopath我可以接受,用来缓存某些三方包,但是我想把我的项目文件夹随便放,不一定要按照定死的规则要放在gopath下面的src下面。
一般正常的工作不都是 虚拟语言环境+三方包 或者 项目下面单独的包管理,各种项目之间 语言环境互不干扰,而且包之间也是独立的。
一干到这个go,我突然有一种强迫症犯了的感觉,难受。似乎我不能为单独的项目维护单独的包。所有东西都是公共的,放在一个gopath下面,各个项目公用。好蛋疼的感觉。
node还有个npm了,所有的三方包可以放在项目下面的modules中,各个项目都是独立的包管理。
求大神解答。语法什么的都不重要。我觉得就这个是最重要的。没有明确的回答感觉心中不安,有一种死不瞑目的感觉。