golang 老鸟快快显圣
背景
我是从一线开发转行到国企做信息化项目管理,朝九晚五,上班基本就是我去 ZF 那边挨骂,然后我转头去骂外包商,基本没什么事。但是我一直放不下自己的技术情节,Java 写了 10 年也腻了,就想用 golang 自己写点东西玩。
现状
我最近尝试用 golang 写一些 web 小玩意儿,但是我很难在网上找到一个适合小项目的项目结构,AI 给的也是大型化的结构。我用 fiber 和 gorm ,viper 做配置文件解析。gorm 的事务管理也比较懵,我都是 cursor 生成。
诉求
请各位针对我只搞小玩意儿的诉求,指点一个 mini 的项目结构,推荐技术选型,指点一下 gorm 的事务控制。
放下 java 思想
gf 不行么?
github.com/golang-standards/project-layout
不过小项目根本没啥必要纠结项目结构.
Kratos 的工程结构可以参考下,虽然是 rpc 框架,但是你写 web 也可以
golang-standards/project-layout 这个根本不算是好的结构:
而且这个 repo 作者可以算是 go 社区里最不要脸的了,我都不敢用“最不要脸的之一”来描述他、怕“之一”不准确:
github.com/golang-standards/project-layout/issues/117
请做个好人,不要再向别人推荐这个带来更多误导。
是的是的 孩子 你是对的
好巧,我也不喜欢这个目录结构
我是基于这个项目改的 github.com/mikestefanello/pagoda
是的是的 孩子 你是对的
其实如果自己不会好好说中文的话,可以完全去混非中文圈,看到过别人喷你、这不是糟蹋自己嘛,何必呢
如果是这样的话,那我安利下我的开源项目:
github.com/keepchen/go-sail
你是对的 👍
工程化: github.com/golang-standards/project-layout
然后看看别人项目,
github.com/go-admin-team/go-admin
github.com/GoAdminGroup/go-admin
github.com/flipped-aurora/gin-vue-admin
看懂了,会用了,就一把梭。
如果是 web 后端的话,我自己有搞一个 gitea.loveuer.com/loveuer/ultone
golang-standards/project-layout 这个根本不算是好的结构:
而且这个 repo 作者可以算是 go 社区里最不要脸的了,我都不敢用“最不要脸的之一”来描述他、怕“之一”不准确:
github.com/golang-standards/project-layout/issues/117
请做个好人,不要再向别人推荐这个带来更多误导。
建议换个用 golang 的公司
吵半天,就没人看看官方文档?
go.dev/doc/modules/layout
还有这个 go.dev/doc/
#6 我靠。我好像就是这种结构,那么有没有其他推荐结构呢?#8 给的可以吗?
有技术情节,咋个连有文档的 gorm 事务都搞不定?怎么个事儿
go 的代码没像 java 那么臃肿,这种审美问题,符合团队的标准和自己的喜好不影响效率就行。如果已经在用并且习惯了,不改也没问题,实用主义
把 gf 官方文档看完,只用 gf 一个库就行。
你这样一问,我必须推荐下自己的开源项目: github.com/WuKongIM/WuKongIM
Go 写 CRUD 可能不如 Java ,写 IM 还是很爽。
Java 推荐这个啦, goframe.org/ ,其他的慢慢来,找其他优秀项目来参考。
别骂外包,对外包好点
用过 v 友推荐的 github.com/go-nunu/nunu
个人感觉用于学习和快速开发都还不错
gorm bug 血多,建议别用
我建议你看一眼 prometheus 的源码: github.com/prometheus/prometheus
上面哪个项目代码质量能比 prometheus 好?
懂了么?根据你的项目而定,想怎么摆怎么摆,go 没那么多限制
和我一样,我也想写个 go 的项目,最后发现没有适合的项目结构,没有和 springboot 这样一统江湖的存在。
小项目直接平铺就行了,你就是想得太多
加点 internal 以及注意避免循环依赖,剩下的根据业务自己发挥了。
因为现在写代码不是我的 KPI 了,我只追求结果。不像以前还干开发的时候,要去搞懂技术细节。
我也用过 sqlx 。习惯于 java 的 mybatis ,其实都不太习惯。你有更好的推荐吗?
然而事实就是除了 grom ,每一个能打的。什么 sqlx 、xorm ,功能上根本就不如 gorm
目前 1 个苹果 1 个锤子。。。锤子好像打开某宝,某东好像卡了,想换下。看了性价比,比较高 K40 或者 K30PRO,买哪个好?只考虑高通的。不喜欢打孔。 MIUI 的广…
在过去的一年中,在线地图的发展是相当巨大,我们可以看到在线地图的极有价值的信息和其能力。这其中,最有名气的自然是Google Maps。. Google Maps由一个相当强大…
高德地图的太模糊了,有像谷歌地图一样清楚的吗,谢谢。主要用处是看看要去的地方,好不好停车等。 国内的民用卫星地图精度是有限制的,国防安全需求。有测绘权的这几家里选选,精度大差…