go新手强迫症患者的新建项目问题

weixin_38066328 2019-09-20 10:42:05
我直接`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中,各个项目都是独立的包管理。

求大神解答。语法什么的都不重要。我觉得就这个是最重要的。没有明确的回答感觉心中不安,有一种死不瞑目的感觉。
...全文
43 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
weixin_38076230 2019-09-20
  • 打赏
  • 举报
回复
你都说了你是用go mod来开发的,那就是你的项目可以随便放了。还去管以前版本的干嘛? 的确,在go mod出来以前,go项目是需要放置在gopath的src目录下的,但是现在没有这个要求了。 有什么好纠结的,之前的vendor模式类似npm,现在的mod类似java的maven。
weixin_38085383 2019-09-20
  • 打赏
  • 举报
回复
OK. 感谢回复。也想开了。不纠结了。

473

社区成员

发帖
与我相关
我的任务
社区描述
其他技术讨论专区
其他 技术论坛(原bbs)
社区管理员
  • 其他技术讨论专区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧