101
yuekcc 2022-02-14 23:57:59 +08:00
js 成最后赢家
|
102
XCFOX 2022-02-15 00:01:54 +08:00 1
有一说一,Go 语言设计的真不怎么样
|
103
ClericPy 2022-02-15 00:11:39 +08:00 1
现东家对 go 的评价就是: 好学是好学, 但煞都木有啊... 再磨合两年吧, 大厂即生态, 小厂跟着看就好了
老生常谈了, 写业务系统首选最擅长的, 其次是 Java |
104
seakingii 2022-02-15 00:16:37 +08:00
业务系统首选 JAVA,C#啊,GO 适合网络相关的中间件或者相对小的独立项目
|
105
1more 2022-02-15 00:18:04 +08:00
是的,赶紧都搞 java ,不要来卷 go 了( doge
|
106
sagaxu 2022-02-15 00:30:57 +08:00 via Android
不要慌,只是技术性调整,福报厂和福报系公司输送了一大堆 P5/P6/P7 大佬,把小微厂土老板唬住了。
|
108
iseki 2022-02-15 01:22:46 +08:00
别说了,一会儿又打起来了···
|
109
drackzy 2022-02-15 01:45:15 +08:00
go 适合中间件,不适合拼业务。二线以下基本没有 go 职位。
|
111
wellsc 2022-02-15 05:00:19 +08:00 via iPhone
@Building 不都是 c like ,oo 模式?怎么就不同的编程思维了。fp 和 oo 才是不同的思维,你去对比下 erlang golang akka 的思维再来说话
|
112
cassyfar 2022-02-15 05:40:17 +08:00
人云亦云是真的可怕,云计算这么多后端服务都在用 Go 写。你们提到的业务应该只是局限在 web server 吧。
|
113
securityCoding 2022-02-15 07:49:34 +08:00 via Android
很多公司包括腾讯吗?
|
115
MrSheng 2022-02-15 08:35:28 +08:00
是真的,不过不是因为业务,而是因为 K8S 。
|
116
snowlyg 2022-02-15 08:36:02 +08:00
真的,都开始用转汇编语言了。
|
117
opengps 2022-02-15 08:36:14 +08:00
业务代码只是逻辑的处理,虽然不同语言有各自的参数差距。但是写不下去这个词过于笼统,是不能成为切换技术理由的
|
118
ClarkAbe 2022-02-15 08:44:08 +08:00 1
啊对对对......我们已经写不下去了,php 真好用啊
|
119
cookgo 2022-02-15 08:56:45 +08:00 1
公司是考虑招人成本的,1W 块的 JAVA 程序员能做的业务系统,1W 块的 go 程序员不一定能做
|
120
5sheep 2022-02-15 09:04:53 +08:00 1
这个我信。原因不是因为语言不行。是生态的问题。
java 有丰富的第三方库,开源项目,并且这些东西已经经过了时间检验,大多数人都在用。 在项目中一个 Ctrl+V 就能解决的问题,放到 go 这边恐怕要重复造轮子好久,有可能造出来的一堆 bug ,或者干脆就造不出来。 |
121
amwyyyy 2022-02-15 09:23:50 +08:00
我最近刚用 Go 写了个小项目,写业务确实繁琐了不少
|
122
nitmali 2022-02-15 09:27:27 +08:00
假的 现在都是用 js [doge]
|
124
shiganwuguo 2022-02-15 09:57:51 +08:00 via Android
Go 业务方面实在拉跨 对于这么多年了连个像样的 web framework 都没有 连个像样的 orm 都没有
|
125
laravel 2022-02-15 10:00:17 +08:00
我都开始转 wordpress 了
|
127
sanggao 2022-02-15 10:06:25 +08:00
golang 设计天生缺陷,写复杂业务痛不欲生,本质 go 对标的就是 c/c++ 你非要让 go 写 web?
|
128
gongquanlin 2022-02-15 10:09:34 +08:00 3
go 生态不行就是不行,但是无状态应用写起来香的一批,启动快、部署快、无环境依赖,我想跑个 java/php 还得装环境先。。
论写业务还是 laravel 快,快的一批,我现在本职 java ,公司写 spring 单说 collection ,哪个工具包能比 laravel 的 collect 强大??哪个包能比 laravel 的工具包全?? 但是 laravel 慢就是慢,被 spring 吊着抽打,性能差了不是一点半点 真正不行的不是语言,是人,生态不好那就自己造轮子啊,语言是死的人是活的,编程开发重要的是思想和逻辑,不是语言 现在公司项目独立部署 srpingboot ,因为公司老哥们都只会 java 。 自己和朋友做的项目全部 laravel + go ,香的一批,laravel 处理业务逻辑,go 处理爬虫、计算、websocket 慢怎么办,慢就堆服务器啊,甲方爸爸有钱(狗头) |
129
oscaryc 2022-02-15 10:11:19 +08:00 2
“很多公司”还是进化慢了点,我司 java 写的业务系统都已经写不下了去了,已经开始转汇编了,你们加油!
|
130
sanggao 2022-02-15 10:20:43 +08:00
@gongquanlin php 的所有框架开发都不慢,本质还是 php 快速,因为 array 大杀神器,独步天下
|
131
springmarker 2022-02-15 10:25:55 +08:00
https://blog.jetbrains.com/zh-hans/go/2021/02/19/the-state-of-go/
统计里面中国人用的最多,其次日本 还有很多人说 Go 适合中间件,然后还是写 web 的最多 |
132
roundgis 2022-02-15 10:28:15 +08:00 via Android
C 都可以寫業務
Go 有什麼不行的 只要錢給夠 |
133
gollwang 2022-02-15 10:30:02 +08:00
有句话叫啥来着:人不行怪路不平?
|
134
huage2580 2022-02-15 10:30:03 +08:00
|
135
gongquanlin 2022-02-15 10:30:14 +08:00
@sanggao php 的 array 无敌
|
136
springmarker 2022-02-15 10:31:33 +08:00 1
从体验上来看,Go 写 web 跟 java web 没法比,根本不是一个级别的。写 Go web 感觉回到了 java 裸写 servlet 的时代。
虽然我接触的语言不算多,但是 GO 这种“大道至简”,在业务面前用着显得反而简陋。 |
137
x940727 2022-02-15 10:32:38 +08:00
@ch2 为什么头条都要阿里的人,甚至还使用阿里那套技术栈,甚至说管理风格?总归有原因的。就像上面的人说的把小微厂土老板唬住了,阿里的人不单单是去小公司能混的风生水起,去同级别的公司也一样很强势,创业成功率也相对来说高不少,福报+政委这套还是有点东西的。
|
138
silentsky 2022-02-15 10:44:09 +08:00
业务上 go 还真比不上 java 写一些中间件还行
|
139
hO0O0 2022-02-15 10:44:27 +08:00
C 我选钝角
|
140
sanggao 2022-02-15 10:52:41 +08:00
用 go 写 web 的那帮家伙,你们为什么不用纯 c 写 web ?
|
141
LosLord 2022-02-15 11:00:04 +08:00
@sanggao #140 可以看楼上 jb 家的统计,都说 go 不适合写 web ,但是现在的 go 反而是 web 占比最多
|
142
1016 2022-02-15 11:00:14 +08:00
你这个帖子 多少有点搞事情
|
144
superchijinpeng 2022-02-15 11:04:27 +08:00
@LosLord 你从哪里看出来的,我怎么没看到
|
145
LosLord 2022-02-15 11:05:10 +08:00
@creanme #143 既然这么火,肯定有人选择 Go 写业务,但是大厂用了,不代表他就是最适合的,每个语言都有大厂用。
|
146
LosLord 2022-02-15 11:05:49 +08:00
|
147
superchijinpeng 2022-02-15 11:10:37 +08:00
@LosLord 这里哪里写了 Go Web 占比最多?
|
148
ccppgo 2022-02-15 11:11:33 +08:00
@gongquanlin laravel 的 collection 不就是 java 的 stream 么, 有啥区别
|
149
LosLord 2022-02-15 11:12:00 +08:00
@superchijinpeng #147
|
150
superchijinpeng 2022-02-15 11:14:06 +08:00
@LosLord 这只是说 Go 开发的软件中,有 36% 是 Web 服务吧,不是 Go 在所有语言 Web 服务的占比吧
|
151
Hanggi 2022-02-15 11:14:53 +08:00
https://github.com/gin-gonic/gin
https://github.com/labstack/echo https://github.com/beego/beego ... Go 写不了业务,这里起码 10 几万人不知道在干什么。。。可能在练习打字吧。 |
152
LosLord 2022-02-15 11:16:38 +08:00
@superchijinpeng #150 我表达的就是这个意思啊,不然你以为呢
|
153
superchijinpeng 2022-02-15 11:17:48 +08:00 1
“都说 go 不适合写 web ,但是现在的 go 反而是 web 占比最多”
可能是我阅读理解能力太差 |
154
superchijinpeng 2022-02-15 11:18:10 +08:00
|
155
Hanggi 2022-02-15 11:23:52 +08:00 2
@superchijinpeng
@LosLord 很清楚啊,楼上很多人说 GO 不适合写 web ,但实际统计下来,写 Go 的人中写 web 的反而占比最高。 也就是大部分写 Go 的人( 36%)都在写 web 。 有啥不理解的? jb 统计数据写的啊。 |
156
p23XnFNH1Wq953rV 2022-02-15 11:27:47 +08:00
不至于写不出来, 就是进度会慢一些, 除非新手乱写了
|
157
cocong 2022-02-15 11:33:49 +08:00
做业务的用啥语言都行,工具而已,业务写不下去多半是公司没钱了。
|
158
newmlp 2022-02-15 11:36:23 +08:00
go 不行,java 更辣鸡,我们已经成立 cpp 组从核心业务开始重构
|
159
twing37 2022-02-15 11:37:43 +08:00
- go 里面有时候有些东西需要自己去实现, 对于动手能力不强的同学可能要抓瞎.
- 当前位置卡在了不上不下的地方,追求极致性能,会考虑用 rust 这种,业务逻辑用 java/erl/python 不会便秘 - java 这种开发起来就是很舒坦. 不用担心语言带来的影响. - go 总是自己玩自己的.go 参数类型那个真的一言难尽 - 概念上的东西,有时候并不能够在 go 上套用 ,要么碎片化严重 - |
160
liquid207 2022-02-15 11:45:17 +08:00
@gongquanlin @sanggao 方便是方便,但是没有详细的注释支持,维护者都不知道这 array 里都有啥,是 1d 的还是 2d 的。
|
161
liquid207 2022-02-15 11:47:26 +08:00
# 128
了解下 C# 中的 Linq? |
162
Sh4p 2022-02-15 11:56:45 +08:00 1
让我看看这次吵得起来不
|
163
thevita 2022-02-15 12:07:15 +08:00
GO 的成功,最大的优势就是人.
---- 能以很低的成本快速培养“能写” GO 的人,GO NB 的地方就在于, 你就算瞎糊,只有逻辑上不出什么大问题,性能都还不错(对于业务代码来说),(参见身边很多 PHP 转 GO 的人的代码) 但是这解决不了业务复杂后带来的可维护性问题,如果团队或者架构师这 GO 上没找到比较好的解法,Java 可能是一种 reasonable 的选择了 ----- 说到底,业务的需求不同 |
164
zzfly256 2022-02-15 12:16:31 +08:00
@ipwx 还真有,我司也是,一个日常使用不超过 30 人的内部信息管理系统,强行上了微服务+K8S ,关键数据库还使用的同一个。。
|
165
yazinnnn 2022-02-15 12:18:23 +08:00
为啥每次都能吵起来呢。。。。
|
166
dany813 2022-02-15 12:19:41 +08:00 1
哎,小项目还是 nodejs 香啊
|
167
qiumaoyuan 2022-02-15 13:16:27 +08:00
@DuDuDu0o0 哈哈哈也可能是腾讯百度的
|
169
paouke 2022-02-15 14:07:49 +08:00
哎,现在这些公司真是太让人失望,我司现在都用 VHDL 写业务系统,上线直接薅 cpu 。
|
170
SlipStupig 2022-02-15 14:17:58 +08:00
我还在用 python 呢,我是不是早就被时代淘汰了啊🤕
|
171
springz 2022-02-15 14:29:22 +08:00
为啥不讨论 Rust ,Rust 写 API 我感觉比 Java 和 Go 都舒服。生态现在也很好,随便写写暴打 Go 的并发。
|
172
AnonymousM 2022-02-15 14:31:22 +08:00 via Android
为啥不用 kotlin
|
173
springz 2022-02-15 14:31:35 +08:00
建议可以先看看 Rust ,个人感觉比 Go 无论各个方面都更好一点。
|
174
springz 2022-02-15 14:37:08 +08:00
C 写 API 其实体验很不错。我就用 C 写过 N 个。
|
175
iyaozhen 2022-02-15 14:38:57 +08:00
|
176
silentsky 2022-02-15 14:40:59 +08:00
用 go 开发业务系统可以提供多些就业岗位 何尝不是坏事 哈哈
|
177
springz 2022-02-15 14:43:04 +08:00
C 如果用 Kore 这种 Web 框架,写的当时还觉得蛮爽的。
|
178
springz 2022-02-15 14:51:13 +08:00
Rust 的基于 hyper 的 async 框架搭配 Pg 异步驱动,实际开发场景中轻轻松松 wrk 能跑到 Requests/sec: 60000 左右。实际开发场景哦。不是对 benchmark 优化。用 Kore 就更高了,看 Kore 的官网 benchmark 单纯输出 Requests/sec: 1000000 以上。
|
179
springz 2022-02-15 14:53:48 +08:00
熟悉 C 或者 lua 的话,碰到一个公司直接 lua 写业务逻辑,直接 Nginx 插件。性能+好用。
|
180
Jwyt 2022-02-15 15:18:00 +08:00
@superchijinpeng 你以为用 go 写中间件的有多少,肯定大部分都是写 web 啊
|
181
nekoyaki 2022-02-15 16:12:30 +08:00
是真的,我听说有好多朋友当男人当不下去了,改当女人去了
|
182
wowbaby 2022-02-15 16:26:01 +08:00
用 go 写业务,个人觉得是没事找事。
|
183
NeoZephyr 2022-02-15 16:54:58 +08:00
我看 B 站的业务也是 GO 写的,但是拆得真的很细,一个 app 里面代码不多,感觉挺好维护
|
184
THESDZ 2022-02-15 17:28:06 +08:00
个人感觉 Go 不适合业务复杂的情况,但适用于业务多但不复杂的情况。
|
185
fromdark 2022-02-15 17:37:26 +08:00
很多区块链项目都是用 go 写的啊
|
186
airport0930 2022-02-15 17:48:16 +08:00
是真的
|
187
wentx 2022-02-15 17:49:15 +08:00
什么时候打起来?
|
188
zhixi 2022-02-15 21:54:15 +08:00
C++的祖传业务都活的好好的呢。go 写业务再难受总不会比 C++难受
|
189
MarlonFan 2022-02-15 23:33:57 +08:00
是真的
|
190
lxml 2022-02-16 00:38:46 +08:00
看见前面说 java 有丰富的第三方库,开源项目,并且这些东西已经经过了时间检验,大多数人都在用。
这是真不拿 log4j 和 fastjson 等当菜啊…… Java |
191
neoblackcap 2022-02-16 01:21:05 +08:00
@springz 写 Rust ,能通过编译都挺不错了。
|
192
dayeye2006199 2022-02-16 02:04:25 +08:00
我在前公司观察下来,go 最有吸引力的一帮人是
1. 在公司做基建产品 -- 网络、存储、计算三大件 2. 往往用的都是 C++,天天和 c++ battle ,挖内存泄露 3. 招人痛不欲生,候选人全跑去选产品组,没人想来和 C++battle 这些人听说 go 之后都很开心的在新项目上开坑。 感觉这个用户群里转语言很合理;写产品和业务逻辑的,抛弃了一个很好用的轮子( java ),转一波就有点不太能理解 |
193
ihciah 2022-02-16 02:07:59 +08:00 via iPhone
@neoblackcap 遇事不决 Arc Clone Mutex ,不就行 Box::leak ,再不行就裸指针了🌚
|
194
Zy143L 2022-02-16 04:59:40 +08:00 via Android 1
是真的 我司 go 都写不下去了 开始用易语言写后端了
|
195
qfdk 2022-02-16 05:27:01 +08:00
java 写业务,后来转到 node.js 了现在 自己测试 go 发现还是 node.js 最方便了
|
197
gongquanlin 2022-02-16 09:37:30 +08:00
@ccppgo collection 有很多非常方便的函数,stream 没有,比如 pluck ,之类的
|
198
gongquanlin 2022-02-16 09:41:07 +08:00
@liquid207 这就是写代码的人的问题了,和语言或者框架木得关系~;
像在我们公司,我和领导提的是开发规范按照阿里巴巴那套去做。我比较刚,凡是写代码不写注释的,不按规范命名变量的,全部打印出来 git 历史,截图发群里给所有开发看。多发几次就知道写注释了,哈哈 好习惯是用绩效养成的 haha~ |
199
ccppgo 2022-02-16 12:05:34 +08:00
@gongquanlin pluck 这种 stream map 一下拿字段然后转 list 就是了, 感觉没有区别, 那些都是基于 map 再封装一次的函数, 还好吧, 毕竟这个是 jdk 本身的包, 不可能那么详细
|
200
liquid207 2022-02-16 12:14:54 +08:00
@gongquanlin 可以使用工具 (PHPStan) 检查一部分,review 解决一部分。比如
``` function test(): array { return [[1]]; } ``` 这样的代码是过不了工具检查的,必要写成 ``` /** * @return array<int,array<int,int>> */ function test(): array { return [[1]]; } ``` |