当前位置:首页 > 每日看点 > 正文内容

写业务的话,go是不是垃圾?

卡卷网10个月前 (02-19)每日看点159

这两天有一个新项目用C#写了一点,想尝试一下用go重写一下看看效果,然后写了大概2天就放弃了

C#这边是ASP.NET Core+EFCore+SqlServer微软官方全家桶

换成go之后用的是gin+sqlx,数据库不变

技术选型这块go web框架看过好几个,比如goframe,echo,go-zero,感觉都太封装过度了内部全是黑魔法,不如gin简洁,而且star最多

不得不吐槽一下go的web框架真是多如牛毛,可以想象的到go工程师的工作现状,这家公司可能用gin,换一家可能用goframe,再换一家用go-zero,这就导致要进阶的话必须每个项目的源码都得大概看一遍,用Java的可能99%都是springboot,用C#的都是aspnetcore,学一个就够干活了

orm这块gorm和ent都看了一下文档,只能说对比efcore来说都是弟弟,所以我选择直接用sqlx手撸sql

技术选型完之后就开始从头搭建项目,然后就被恶心了两天

第一个点,swagger每个接口的请求参数,接口地址,接口分组都得在注释里面标注出来,巨麻烦,还没有语法提示,还好有gpt,不然我都不敢想象其他人是怎么写的

第二个点,time不能自定义format,官方默认就是utc格式,想换成yyyy-MM-dd HH:mm:ss格式的特别麻烦,gin绑定日期格式的字段也会有问题,仓库上面好几个相关issue从4,5年前到现在都还是打开状态的,难道干go的人做的crud系统,日期格式都是按utc或者时间戳返回吗

第三点,干活效率变慢了,一个正常的crud接口,请求参数得自己绑定,每一步还要判断err错误,加上从orm退化成原始的sql写法,再加上自己还要写swagger文档,干活效率至少降低为用C#开发的1/5

第四点,生态太拉了,java就不说了,连C#的生态都比不过,easycaching这种支持二级缓存的缓存框架没找到,fastreport这种报表框架也没有,分布式锁DistributedLock这样的没有,只有单纯支持redis的,orm也全是半残废,大公司的话有基础设施团队的话还好可以自己弄,小公司的话业务代码都写不完,还要自己写基础库,纯纯折磨自己

唯一的优点就是打包产物很香,编译后就是一个30多MB的可执行文件,复制就可以运行,启动到可接受请求不超过200ms(目测),对比一下.NET 9打包的成品,安装各种常见的库之后,应该要100MB起步了,外带服务器要装运行时,启动到可接收请求应该要1s(目测)以上了,这点确实秒杀C#


补充一下 time format的json自定义格式化功能在17年就提了,现在还没加上,就离谱

proposal: encoding/json: support struct tag for time.Format in JSON Marshaller/Unmarshaller · Issue #21990 · golang/go

以上问题导致我要别扭的自定义一个type MyTime time.Time,然后自定义json序列化反序列化,gin绑定query参数还得再实现一个接口(feat(binding): Support custom BindUnmarshaler for binding. by dkkb · Pull Request #3933 · gin-gonic/gin gin 1.11版本才加上的,2024年了都),传到数据库的时候又得转一遍类型到time.Time,绑定form表单里的时间我还没试过有没有问题

一个时间格式化的问题感觉搞得乱套了都

扫描二维码推送至手机访问。

版权声明:本文由卡卷网发布,如需转载请注明出处。

本文链接:https://www.kajuan.net/ttnews/2025/02/10894.html

分享给朋友:

相关文章

app拉新在哪接单?

app拉新在哪接单?

“提供500+款任务”,“一手渠道app拉新项目”,“纯绿色的”,“高佣金”,“当天做当天结/算”,“多年孵化经验”,“独立后台一对一帮扶持”以上这种还有人信吗???作为一个做了三个月时间并且也踩过坑的人告诉你,不要轻易相信发这种广告的,还...

为什么我们一直在给B站充大会员但B站却一直处于亏损状态?

我讲一下离谱的真相吧,欢迎喷我。很多人都觉得B站在赶走人才,赶走优秀的长视频创作者,也觉得知乎在这么做,是没错的。确实在这么做。而原因很简单。只有影响力很大的KOL才有商业价值。(KOL是指“关键意见领袖”)而你说你是人才?对不起,人才不赚...

为什么大家都说手机性能永远超不过PC?

最新的天玑9400牛逼吧,堪称PC级CPU,测试成绩16W功耗能跑9500分,1.8W能跑3000分,GPU也差不多是这个情况。手机电池一般是4000-5000毫安时,电压3.7V。也就是说,手机正常满载5W功耗下,这个电池能支持运行4个小...

小米15就要来了,不知道小米15值不值得买?

小米15就要来了,不知道小米15值不值得买?

俗话说得好,好饭不怕晚,看似有点姗姗来迟的小米15系列,一官宣就迅速登上热搜。在此次小米14发布会上,雷军曾说过小米14将是最后一代3999起的旗舰,那么这一次涨价了的小米15,值不值得买呢?下面为大家总结一下小米15将会有哪些升级点:软件...

下一个风口最可能是什么?

下一个风口最可能是什么?

肯定是一带一路了,国内没什么卷的空间了,现在国家正在给一带一路的第三世界国家建设基础设施,等交通打通之后,就是通信打通,通信打通就是贸易打通,未来我建议大家重仓小语种,阿拉伯语最值得学(也有其他小语种自己去查一带一路国家),将来去其他国家随...

有哪些网站,一旦知道,你就离不开了?

有哪些网站,一旦知道,你就离不开了?

这六个网站,一旦用过,基本上是离不开了。都是我超爱的一些网站,基本上每天都用。1 地图生成器第一个,我要给大家推荐的是地图生成器。可以下载到各省,各市,各县的svg格式的地图素材。这些素材导入PPT中都是可以编辑的。可以单独更改颜色和轮廓。...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。