1
dilu 2021-11-24 17:40:27 +08:00
管他呢,能吃饭的就是好语言
|
2
rimutuyuan 2021-11-24 17:43:36 +08:00 1
|
3
Rwing 2021-11-24 17:43:37 +08:00 10
那个啥,要不体验一下 C# ?
|
4
javaisthebest OP @dilu xd 这话没毛病。。但是好歹吃饭的家伙顺手点啊。
|
5
Saxton 2021-11-24 17:47:00 +08:00 14
JAVA 只要脑子正常点,其实很难写出烂代码的
|
6
Leviathann 2021-11-24 17:49:27 +08:00 2
less is more
有时候意味着抽象 less ,代码 more |
7
dqzcwxb 2021-11-24 17:50:08 +08:00 11
预测一下
"是你太菜,不是 go 不行" |
8
JKeita 2021-11-24 17:50:44 +08:00
各有优缺点,列举 java 缺点一样能举一堆。
|
9
xhinliang 2021-11-24 17:51:45 +08:00 57
莫名被楼主的 id 和帖子标题逗笑了....
|
10
lianghuan 2021-11-24 17:53:38 +08:00 3
没有烂的代码 只有烂的人
|
12
securityCoding 2021-11-24 17:57:39 +08:00
这是前任的问题吧
|
13
lidongyooo 2021-11-24 17:58:04 +08:00 5
被楼主恶心到了,你牛逼干嘛进用 Go 的公司?吃饱饭摔碗骂娘
|
14
swulling 2021-11-24 17:58:52 +08:00 5
虽然语言都是表相,但是每个语言都有自己擅长的领域。这种擅长小部分是因为语言特性,大部分是因为软件生态的建设。选择不适合的语言并不是把事情做不成,而是事倍而功半。
举几个例子,Python 适合炼丹,Java 适合复杂业务逻辑开发,Golang 适合中间件开发等等,这些并不是刻板印象~ |
15
adoal 2021-11-24 18:01:08 +08:00 via iPhone
离职大法好
|
16
tabris17 2021-11-24 18:02:21 +08:00 1
习惯而已,要知道很多 Go 开发是从 Node.js 和 PHP 转过来的
|
17
yazinnnn 2021-11-24 18:03:46 +08:00 1
害,反正语言只分两种,有人骂的和没人用的
你看 c#家的亲戚 f#,根本都不会有人看他一眼,即使这玩意儿非常牛逼 |
18
LoNeFong 2021-11-24 18:06:17 +08:00
难道 java 新增配置不写 Configuration/Properties 吗?
|
19
bianzhifu 2021-11-24 18:07:15 +08:00
笑而不语
|
20
Reficul 2021-11-24 18:09:05 +08:00 2
我写 Java 的时候,我也一路骂到底。
问题是,我不会主动入职一个写 Java 的团队,然后去网上发帖骂 Java 。 非要被迫改几行 Java 代码,也是喷之前写 Bug 的人。 |
21
matrix1010 2021-11-24 18:10:57 +08:00
你可以试试我最近刚写的配置管理轮子: https://github.com/Yiling-J/piper 。只需要改配置文件其他自动生成。不过用这个你得把以前所有的配置方式都改掉🐶
|
22
javaisthebest OP @LoNeFong
1. golang 需要改结构体 /新增结构体 2. 如果是新文件的话 得通过 ioutils 加载文件流 3. 加载过程 还得 判断个 error 4. 写 json 文件 ide 不会有智能提示 属性文件多了。这谁知道 哪个结构体在用哪个属性 全靠猜了 java 的话哪需要这么多麻烦。。 直接写个 java 文件 加个 @Configuration 顺便带个 prefix 就智能匹配了 何况有 idea 提示 |
23
darksword21 2021-11-24 18:17:04 +08:00 via iPhone
好家伙直接 java 世界第一语言,一时间不知道从哪开始喷你
|
24
javaisthebest OP |
25
javaisthebest OP @Reficul
你骂什么? 骂写的烂?还是 |
26
darksword21 2021-11-24 18:20:05 +08:00 via iPhone
@javaisthebest 我不用反驳,你证明一下吧
|
27
documentzhangx66 2021-11-24 18:21:49 +08:00
当年 Android 系统进入国内才三四年时,各种烂,但本科毕业生能给到人均 1w...
|
28
vone 2021-11-24 18:23:10 +08:00 1
看看你的 id ,真是个狗渣男。
|
29
sadfQED2 2021-11-24 18:29:12 +08:00 via Android
人菜不要怪语言,要不就是你们公司框架烂
|
30
yrj 2021-11-24 18:29:36 +08:00 via iPad
php:谁夺去了我第一的名号?
|
31
javaisthebest OP @darksword21
我觉得好有这些 1. 搭配 maven 好用 最底层的依赖管理上可靠。maven 简单易学 可以说一天就学会 而且插件强大 2. 搭配 spring 和 maven 任何框架能傻瓜式接入 第三方要是封得好一点。开箱即用 直接导入就可以使用了 3. 面向对象设计 可以使用 aop & ioc 。 4. 编译语言 常驻内存 可以做各种流式任务处理 5.idea 强大 |
32
Amit 2021-11-24 18:32:09 +08:00 1
@Saxton 要是之前我会认同这句话,但是现在我知道烂是不分语言的,优秀的语言并不一定保证写出优秀的代码,任何语言都一定可以写出烂代码
|
33
encro 2021-11-24 18:35:38 +08:00
“
包管理更是别说了 golang 设计者以 git 为包平台 我现在想找一些封装的 http 或者其他工具类 由于不像 maven 和 npm 有一个统一的平台打包 ” 居然没人喷。。。。 |
34
zliea 2021-11-24 18:35:50 +08:00 13
其实,我们用的不是 java ,我们用的是 spring 。
|
35
yulon 2021-11-24 18:37:27 +08:00
https://gowalker.org 那么好用,用 Go 还要手动写文档?
|
36
LoNeFong 2021-11-24 18:37:56 +08:00 3
@javaisthebest
1.java 也需要 JavaBean 2.java 新增文件难道不需要加载流吗 3.将配置序列化为结构体只需要判断一次 error(spring-boot 是因为提供了 default 配置,) 4.spring,Properties 智能提示是 idea 的功能, 和语言有什么关系 5. 可能你需要 viper |
37
LoNeFong 2021-11-24 18:39:13 +08:00 5
我感觉你喷的不是 go, 只是 java 给了你太温馨的家园, 你就以为所有语言该是这个样子的
|
38
linkoc 2021-11-24 18:39:40 +08:00
哈哈哈哈哈哈啊哈哈
|
39
qq1340691923 2021-11-24 18:40:06 +08:00 1
你是不是觉得有 java 基础转到 go 就什么都不用学了
|
40
scukmh 2021-11-24 18:40:28 +08:00
`java is the best `
|
41
chi1st 2021-11-24 18:40:40 +08:00
我只想知道虾皮给的多吗?
|
43
kidonng 2021-11-24 18:43:17 +08:00 via Android
同意 37L ,语言基建和语言本身是两码事,用不来基建不代表语言恶心。看多少人把 ohmyzsh 功能当 zsh 自身特性就知道了。
|
44
passer9527 2021-11-24 18:43:53 +08:00 via iPhone
我投 Java 一票
|
45
darksword21 2021-11-24 18:44:12 +08:00 via iPhone
@javaisthebest 毕业就没用 java 写过了,我没啥要喷的就说下简单的感受
1.maven 就是用 xml 那个吗,对 xml 很反感直接 pass 。。 2.spring 很强但是不喜欢大一统 3.面向对象不是银弹,干啥之前先来个 class 给我印象和你对 go err 的印象差不多 4.go 不也是吗 5.goland 也是这个公司的啊。。其次 idea 还收费,而且不喜欢 java 这种离开 ide 都不知道咋整的语言, 没有 emacs 的世界我无法接受 |
46
Buges 2021-11-24 18:45:00 +08:00 via Android 3
Java 和 go 几乎是两个极端,你不习惯很正常。
Java 过度抽象,复杂度堆到了极点,go 则是故意设计地陋。如果你接手屎山代码,go 可以有效降低心智负担。 |
47
hakono 2021-11-24 18:45:08 +08:00
关于 json 这东西我咋感觉是 lz 前人写的代码有问题。。。。。
|
48
qq8331199 2021-11-24 18:47:29 +08:00 1
我不喜欢 java 我也回一句垃圾 java 没意见吧
|
49
dunn 2021-11-24 18:47:59 +08:00
go 是谁,找他的上级投诉他
至少也要恶心恶心他 |
50
fuchaofather 2021-11-24 18:51:15 +08:00
牛皮, 虾皮的钱多吗
|
51
Fu4ng 2021-11-24 18:51:41 +08:00
确实恶心,来虾皮纯属技术扶贫。
看了下楼主主页,当时为啥不去亚马逊呢? |
52
darknoll 2021-11-24 18:51:51 +08:00
@javaisthebest 不爽辞啊,要不你让人家把代码改成用 java 写?
|
53
iyear 2021-11-24 18:52:57 +08:00 via Android
包管理个人觉得 go mod 比那种中心仓库的好用很多
|
54
javaisthebest OP |
55
4771314 2021-11-24 19:07:05 +08:00
go 做中间件、云原生很爽,写业务的话就比较一般了。
自己接受的岗位,只能自己做完了,别一味的的抱怨,首先还是改变自己吧,go 也有自己的优势(虽然有时候是被迫的),建议 lz 先好好学学 go ,再来对比。 总是站在 java 或者总是以自己舒适的方式来看待 go ,是在是有失偏颇。 最后,存在即合理。 |
56
dbpe 2021-11-24 19:07:30 +08:00
写了几个工具,go 给我的感觉...能用就行...至于方便不方便.那不在乎..
|
57
iyear 2021-11-24 19:08:14 +08:00 via Android
@javaisthebest pkg.go.dev 不是可以搜包么
|
58
xdeng 2021-11-24 19:18:26 +08:00
panic recover 不是可以做到全局捕捉么
|
59
zhoudaiyu 2021-11-24 19:18:44 +08:00 1
Either you or your code can run is enough
|
60
aptx4689 2021-11-24 19:19:55 +08:00
goland 把 json 粘贴进去不是可以自动生成 struct 么。。。
|
61
yangyaofei 2021-11-24 19:31:07 +08:00 via Android
@darksword21 其实,java 生态还是牛逼的,就写后端来说,spring 很爽啊 快速实现什么的,maven 太恶心了,都是用 gradle.
以及,我主要写 python 的,在我的角度比 java 好用多了,但真写代码,还是 java 不那么容易写出没法用的代码 |
62
Nasei 2021-11-24 19:34:01 +08:00 11
你现在能理解 c#是怎么看 java 的了吧
|
63
GGGG430 2021-11-24 19:37:05 +08:00 4
脉脉发一次, 又来 v2 发一次? 你到底发了多少地方啊, 至于吗, 不爽就跑啊, 又没人逼着你用
|
64
dilu 2021-11-24 19:37:44 +08:00
@javaisthebest 以前写 PHP 很顺手,奈何饭吃不饱嘛 doge
|
65
mxT52CRuqR6o5 2021-11-24 19:40:00 +08:00
我听下来感觉是不是说把应该 hard code 的东西写到 json 配置里去了
hard code 和 json 配置,我也是倾向于 hard code |
66
fxxkgw 2021-11-24 19:47:33 +08:00
看到那么多问待遇的 回复下:虾皮待遇中上 深圳那面有机会去新加坡 我姐她老公在那 4/5 年样子 然后全家去了新加坡总部了。。
|
67
eliteYang 2021-11-24 19:48:05 +08:00
马上都 2022 年了,还有人在玩“PHP 是最好的语言”的哏?
|
68
azkaban 2021-11-24 19:55:50 +08:00
go 性能 nb 啊,我们的线上 dsp 和算法都是 go ,ssp 还是 java
|
69
cloudzhou 2021-11-24 19:55:52 +08:00
@javaisthebest 你有没想过,除了 4 ,其他的本质是 SpringBoot 的强大,相反来说,只能说 Shopee 基础太弱了
|
70
pengtdyd 2021-11-24 19:56:35 +08:00
只要待遇好,必须干到老。
|
71
silvernoo 2021-11-24 20:18:18 +08:00 1
笑死 自己菜怪狗
|
72
zjsxwc 2021-11-24 20:27:17 +08:00 via Android
套用成功学的一句话“格局小了”
|
73
starcraft 2021-11-24 20:40:52 +08:00 via Android 6
很有意思,我觉得只有国内这种 go 生态和 c#一样畸形的环境,才能有这种评论区。
我蛮想看若干年后,又出来个新语言和 go 玩办公室政治,洗 go 团队的时候,会是个什么画风。 不对,我赌这帮人已然被优化了,也没什么画风了。 我再赌那时候 Java 依旧稳坐业务王座。 |
74
qq1340691923 2021-11-24 20:41:39 +08:00 via Android 1
[7 天用 Go 从零实现系列背后的故事-哔哩哔哩直播] https://b23.tv/ZdSdcHF
|
75
sprite82 2021-11-24 20:52:50 +08:00
go 写复杂业务是真的不爽,简单的业务搞搞还是挺舒服的
|
77
satoru 2021-11-24 21:00:39 +08:00
不要去这种不用世界上最好的编程语言的公司
|
78
fml87 2021-11-24 21:07:11 +08:00 1
我也不理解为啥要用 go 写业务,开发速度比 C 快不了多少,复杂业务用 go 写一遍的时间,我能用 ruby/js/python 各写三种不同的实现
|
79
guanhui07 2021-11-24 21:07:44 +08:00
go 挺好的啊
|
80
outersider 2021-11-24 21:10:31 +08:00
我只想知道虾皮给的多吗?
|
81
ClericPy 2021-11-24 21:19:39 +08:00
哈哈 还是水平不够吧, 以前现学的 go 同事不知道 json 和 HTML 都有现成解析器, 结果自己动手发明了一套语法... 多用用就习惯了, 反正我现在是学 go 但不用它, 早晚用的上
|
82
HappyFox 2021-11-24 21:30:22 +08:00 1
@javaisthebest #54 歪个楼,这个是感觉是基建+维护的问题,但更像是业务太快没时间提技术优化需求。建议和产品、研发 leader 对一下,看看是逐步优化还是大版本优化。
中心仓库这个,个人见过的解决办法: 1 、自建私有源,保留历史版本(对应 java 的自建仓,不过 go 的更简单,gitlab 顺便存一下依赖库就解决了,也不需要多部署别的服务) 2 、运维团队在 1 的基础上审核并更新版本,merge 公司内使用的魔改版到最新版(避免恶意代码+适应特异性优化) 3 、公司内的文档工程师定期处理组内对外提供服务的工具文档(有云服务的基本都有,自己部门没有,可以去别的部门借一个临时用用) 其实老哥你换个思路,公司问题越多,你的机会也就越多。如果公司啥问题没有,那找咱们来干啥。。。 |
83
EscYezi 2021-11-24 21:37:20 +08:00 via iPhone
看了一下楼主贴子,感觉自己已经被 spring 惯坏了🤣虽然总嫌弃启动慢之类的,写起业务还是真香
|
84
SuperManNoPain 2021-11-24 21:39:05 +08:00
作为 java 开发,java 启动,内存确实慢,但是开发起来确实是舒服😂
|
85
sagaxu 2021-11-24 21:53:50 +08:00 via Android 1
less is more 的精髓:少量语法大量代码
|
86
ylsc633 2021-11-24 21:55:13 +08:00 5
都是先入为主惹的祸
java 跟 go 本来就是两个相反的理念 假如你先写的 go, 再去写的 java,你会发现 无比繁重, 启动贼慢, 内存疯长,并发代码逻辑复杂还容易出问题 是一个道理.. 就看你先熟悉哪个了 毕竟语言不同,他们的生态圈完全不一样, 所以都有个习惯的过程 就跟你现在在你这家公司待熟悉了.. 什么业务你都觉得有底 可是你入职了一家新公司, 你会发现前期很难熬,因为很多你不熟悉的,就觉得十分不习惯.. 那说回原题 既然不习惯 go, 就跟你不喜欢这公司一样,不想习惯了,就换呗 太正常了 |
87
tbg 2021-11-24 22:00:23 +08:00
我以为楼主被 gou 恶心到了
|
89
zyfsuzy 2021-11-24 22:19:57 +08:00
真牛逼,电商不用 Java 闹呢
|
90
wdlth 2021-11-24 22:23:00 +08:00
你可以先写 Kotlin 恶心一下,然后再写 go 。
|
91
JudyHal 2021-11-24 22:26:41 +08:00 3
唉,没想到这种弱智言论也有这么多人赞同,V2EX 现在已经变成反智主义的中心了,Java 这种除了中国都没有地方用的语言也吹的出来
|
92
liandi1990 2021-11-24 22:28:07 +08:00 via iPhone
|
93
adoal 2021-11-24 22:31:16 +08:00
@EscYezi 对,所谓 Java 写 CRUD 写业务逻辑省事,大部分其实是在说 Spring……不严格地来讲(经不起咬文嚼字者抬杠),可以在某种程度上把 Spring 系列框架甚至 IDEA 的一些自动化功能看作是以 Java 为底层的 DSL……只就 Java 本身来说写业务有啥省事的,啰嗦致死。
|
94
iyaozhen 2021-11-24 22:59:36 +08:00
现在在用 go 、Python ,之前 PHP JAVA Python 多一点
整体来说 go 还才起步,肯定很多问题 1. json 属性文件,不管哪个语音都需要配置文件吧?不然怎么办 不喜欢 json 可以用 yaml 2. 在里面增加对应的结构体,这个就是反序列化,这个难道 java 不用写一个 class ? 3. 还得在代码里通过 io 去加载各种资源,额 哪个语言不都这样嘛? 4. 这个过程 ide 是感知不到的 确实,只能看见定义的 struct ,但是配置中的具体内容看不见 5. 统一的平台打包 https://pkg.go.dev/ 这个 其实还有个问题,go 包管理依赖 git ,但公司内部 git 都是有权限的,导致编译依赖要申请一堆权限,非常麻烦 6. 如果没有人在内部写对应的文档 其实话又说回来,公司内部开发的话,工具链限制的非常死,orm mysql/redfis 啥的客户端都规定好了,估计你没找到文档,或者公司内部本来就没有 7. 隔几行就出了一个 error. 有一说一,确实垃圾 |
95
iyaozhen 2021-11-24 23:12:23 +08:00 via Android
JAVA 主要是还是得益于 spring 一桶江湖了。
要是 go 有个框架统一了,IDE 分分钟给你支持,要咋提示就咋提示 |
96
javaisthebest OP 启动慢 这个我承认
但是 go 并发代码 我是表示怀疑 Java 的并发一般通过线程池 封装好的 Web 环境下开发的 Spring bean 都是无状态的 只要照猫画虎 完全可以不用担心 golang 的协程 随意创建 也没有统一的池来管理 一旦协程出了问题。一般人也不太敢去修 |
97
cubecube 2021-11-24 23:28:29 +08:00
@JKeita java 语言本身,除了啰嗦点,没啥太大的缺点了。几个所谓的语言缺陷,马上 loom ,值类型,泛型特例化都要修好了
|
98
zhuangzhuang1988 2021-11-24 23:49:39 +08:00
@javaisthebest 不自己控制怎么显得自己牛逼呢
|
99
Mirage09 2021-11-25 00:08:33 +08:00 via iPhone 3
@JudyHal 我记得你,极端 java hater 是真的敢扯淡…别的不说,Amazon 那么大一个主用 java 的公司被你吃了?
|
100
shyangs 2021-11-25 00:43:06 +08:00
Java 適合做業務. Go 適合中間件.
前人總結過經驗教訓. 你又驗證了一次. |