101
akira 2021-11-25 00:48:04 +08:00
只要给的足够多,你让我那汇编写业务代码都行。。。
|
102
hst001 2021-11-25 00:54:25 +08:00 via Android 1
你喷的这些东西跟 go 语言本身一点关系都没有,只不过没人给你造这些工具而已。
|
103
zjyl1994 2021-11-25 01:19:34 +08:00 via iPhone
建议立刻离职去 java 公司,别为难自己
|
104
felixcode 2021-11-25 01:40:06 +08:00 via Android 9
接受不了新事物,学不了新东西,哪怕用回 java ,换个框架或换个版本,离开了舒适区,照样会到处喷。
|
105
xjlnjut730 2021-11-25 07:04:42 +08:00
我跟楼主同样的想法
|
106
dayeye2006199 2021-11-25 07:59:40 +08:00
这个不是 go 的问题;是缺乏像 spring 这样的杀手级框架。
|
107
SurfaceView 2021-11-25 08:24:17 +08:00
@Mirage09 他那句才真是纯反智发言把。。。确实极端 JAVA hater
|
108
ly020044 2021-11-25 08:36:29 +08:00
xd, 看你的 ID 我就知道你是几个意思了
|
109
sxfscool 2021-11-25 08:45:30 +08:00 2
这 id ,还真是 java boy
|
110
chouchoui 2021-11-25 08:56:53 +08:00 8
看淡点,全国吹 go 的都在 V2EX 了
|
111
lower 2021-11-25 09:02:16 +08:00
我记得之前看到过一个开源项目,是按照 springboot 的方式用 go 语言实现了一套
记得作者好像还是某个大厂的 |
112
hidemyself 2021-11-25 09:04:32 +08:00
@lower 滴滴
|
114
x7DnVcd9bA706oWp 2021-11-25 09:11:27 +08:00
是你太拉垮,不是 go 不行
|
115
LessonOne 2021-11-25 09:22:20 +08:00 2
@JudyHal 我笑了 Java 每年排行都是前三 很多开源的框架都是国外开源的 说只有中国在用你 4 不 4 小学没毕业
|
116
stevenbipt 2021-11-25 09:25:47 +08:00 1
json 这个强类型语言不都得定义好对应的数据结构?
error 这个开始觉得挺烦的,但是处理好了基本上程序就不会出现一些奇奇怪怪的问题对于后期维护和排查问题也挺友好的,没想象中的那么烂. 个人感觉最难受的还是因为没有范性,导致标准库提供的数据结构确实比较蛋疼,连一个 slice 转 map 都要自己去写,业务逻辑多了以后这个还蛮烦人的. |
117
BeijingBaby 2021-11-25 09:27:07 +08:00
怎么说呢,Java 用了很多年,但是你用 Go 基本就是菜鸟。不要以为掌握了其他一门语言就能用好 Go
|
118
cppc 2021-11-25 09:33:48 +08:00
GO 输在了 spring 上~
|
119
mosfet 2021-11-25 09:33:50 +08:00
国内生态别具一格
java go 比例特别高 php c#比例特别低 |
120
kerro1990 2021-11-25 09:37:50 +08:00 2
难怪虾皮用起来这么垃圾,原来是你们开发的
|
121
jsjjdzg 2021-11-25 09:42:12 +08:00 1
说 Go 不行有问题嘛?有 Spring SpringBoot 这样的框架嘛?唉,虽然每次碰到 XX 语言好,XX 语言不行都会战起来,不过理性来看。。。这次楼主没喷错
|
122
zmqiang 2021-11-25 09:58:16 +08:00 1
也写了一段时间 go 了,有种 go 不是面向编写者的语言,是面向工程的语言,是面向维护者的语言。对于抱怨了那些,如果以维护者的角度来看,其实是挺好的,所有的东西都摆在明面上,没有看不到的流程,会让代码非常的好阅读和维护。
|
123
wzy44944 2021-11-25 10:01:19 +08:00
听下来和语言没什么关系,是这个工程设计上的问题?好奇这个 json 属性文件是干什么用的?是类似 idl 吗?要是有个属性文件,还需要写 go ,不是应该有个代码生成器负责这个事情吗?
|
124
xz410236056 2021-11-25 10:05:02 +08:00
“写了 json 内容后 还需要自己去写对应的 config.go 文件 在里面增加对应的结构体”
这不是标准规范吗?哪个语言直接操作 json ? 你这种是怎么进入 shopee 的。 |
125
huiyifyj 2021-11-25 10:08:18 +08:00
啊? Java 还好意思嘲讽别的语言呢?
|
126
RedisMasterNode 2021-11-25 10:09:18 +08:00
@sadfQED2 别别别大哥,我司没有什么特别全面的框架,要我说还是使用者自己的问题;框架一般只负责接入一些全局通用的东西,例如监控、日志等等。逻辑代码就是原汁原味的 Go ,这种 case 基本上 99%的问题都是使用者的。
另外 To 主楼,写 Java 的人也应该想清楚 go 再来写,不要无脑把你们 Java 那套破烂带过来。 |
127
huiyifyj 2021-11-25 10:15:32 +08:00
用写 Java 的思维写 Go 本身就够离谱的,JSON 写起来方便你咋不用 Nodejs 呢?包管理方便你咋不用 rust...这些突出并没说明 Java 多好,更多还是自己思维固定了
|
128
cenbiq 2021-11-25 10:17:00 +08:00 5
可怜我 C#,吵都没人吵呀
|
129
leeg810312 2021-11-25 10:20:59 +08:00 via Android
吵了半天就是 go 生态写业务太烂,go 还不适合,是不是一个公司只能用一种技术栈?
|
130
ryalu 2021-11-25 10:26:12 +08:00
毫无意义的吐槽贴,看完就想笑。json 有自动转化工具 https://mholt.github.io/json-to-go/不会去用,读取配置文件有强大的 https://github.com/spf13/viper ,自己还可以根据自己喜好封装下,go 的 error 处理方式你可以不喜欢,但在代码逻辑层面他又是必不可少的一部分,就算 java 有强大的全局捕捉,但相信每一步的错误判断也少不了吧。与其在这儿做毫无意义的吐槽、贬低,不如去深入研究下语言,go 既然能走到今天的地位,那肯定有他吸引人的地方,毕竟使用它的大厂也不再少数。当然,如果你纯粹的就是不喜欢 go ,那就别碰它
|
131
manami 2021-11-25 10:37:30 +08:00
java forever
|
132
xxxxware 2021-11-25 10:43:02 +08:00
.... 各有各的好, 要方便怎么不去写 py 呢。 写了 py 又会骂 py 维护火葬场
|
133
cyrivlclth 2021-11-25 10:44:43 +08:00
哈哈哈,我刚开始 JAVA 转 GO 的时候也是这样的,后来想了想,面向工资编程。
|
134
redvoilin 2021-11-25 10:47:37 +08:00
go 适合写写基础组件,用来写业务代码真的很不舒服
|
135
28Sv0ngQfIE7Yloe 2021-11-25 10:54:52 +08:00
|
136
JoeBreeze 2021-11-25 10:57:43 +08:00 1
等一个大佬出一个集大成的语言, 浑身上下只有优点, 一统江湖
|
137
james2013 2021-11-25 10:58:13 +08:00
Java 已经是非常成熟的后端开发生态了
Spring Boot 开箱即用,1 个小时内创建项目,并编写出从 Mysql 查询,Redis 缓存的接口 这几种语言用的比较多:Java,JS,Kotlin,Python Go 只简单用过,不发表意见 发现 Kotlin 最舒服,其次是 Java,Python 最恶心 Python 代码写错了,编译过程不报错,有时不小心多打或者少打字符,当时也发现不了 Python 没有强约束,传值,返回值,太灵活了,逻辑写复杂点,自己的代码过段时间都不知道怎么看了 PyCharm 支持明显比 Java 差,Idea 点击方法调用的地方,只会跳到唯一的地方,而 Python 不一样,会提示很多方法 |
138
nash 2021-11-25 11:04:03 +08:00
java 离开了 spring 估计也会被喷成狗 作为一个程序员以语言引战就是心智不全的表现
|
139
fregie 2021-11-25 11:06:03 +08:00
哈哈,被恶心到就对了,go 本身就是一门对开发者不友好,对架构师友好的语言。开发者用起来很多地方不方便,要写很多错误处理代码,强类型,不面向对象要写很多结构体。但是这些麻烦对于提升项目整体质量来说非常有效。
|
140
yuanchao 2021-11-25 11:10:06 +08:00
额.... ,你可以试试 github.com/tidwall/gjson 这个包,解析 json 还是比较好用的,非这个包的开发者,只是我目前用的比较多的
``` respJson := gjson.Parse(string(response)) respJson.Array() respJson.Get("0.data.id") ``` |
141
sgissb1 2021-11-25 11:11:15 +08:00 8
go 的好处就是降低了程序员准入门槛,任何一个人都可以抱着 go 说自己是高性能,高并发程序员。其本质还是 go 在背后解决了携程和线程调度的问题,当然也有不少开源的作用,不过遇到不会用的,还是一堆坑,没错! go 的坑也不少。
java 的好处就是,让很多人在以前装了一把 oo 概念,实际上软件模型设计就没有那么多玄学的东西,关键要适用要好用,各种 pk 设计模式,那就是认为复杂化问题的前提,所以一些 java 程序员也很能把一个很小的需求让软件规模变大 c#的好处就是他的语法接近 delphi 、c 、c++,有着类似 delphi 年代的边界和相对低门槛,又有 M$作为后盾,在里面增加很多和系统有关的易用 API ,而且 vb 程序员也能相对容易的转 C#,基本就是 java 的一个翻版,可以写 native app 、网页等等。但 framework 也是让人比较难受,更何况现在都是预装,让系统体积变大了不少,还有不少预加载在后台等着运行 c#写的东西,不利于一些相对低功耗方案的硬件。 c++的好处就是划时代的解决了 c 写一个程序时的抽象问题,让大家写起来和阅读起来更加自然,也增加不少花样和奇 X 技巧。但是弊端也很明显的,首先方言版本太多,另外还是需要了解一些底层的东西,如果写代码的人掌握的不到位,很容易分分钟 crash 或者出不可预知的问题。这也造就了刚刚普及当年,很多人看过的《 XXX 天精通 c++》这篇文章。另外语言存在较强的灵活性(低情商说法:语言不规范)。面试的时候,大家都很喜欢用指针、sizeof(XXX)之类的进行考,还有各种复杂的运算符,类似+++++i++++等。 c 的好处就是不用再写汇编了,也可以从其他语言脱离出来安心写逻辑了(比如 fortran 等等),但还是时代产物,也有不少特定场景的用法(不该说是方言,应该是应用方向),比如在嵌入式里写的 C 和 PC 上写的 C 就有一定细微的差距,当然每年更新的标准让 C 和 C++这两个庞然大物改变较大。 作为一个上面几个语言都接触过,而且 90%的时间都在写 c++的人来说,开发语言真是没什么好辩论的。主要是现在这个年代不值得这样做,另外也是不成熟的做法。合适的地方用合适的语言,这才是真正资深程序员的做法,而不是那种完成 KPI 的“资深”程序员的做法 |
143
seakingii 2021-11-25 11:23:31 +08:00
c# 躺平,不参与比较
|
144
xfun 2021-11-25 11:26:55 +08:00
那这样一看 javascript 更符合你的要求。233
|
145
zagfai 2021-11-25 11:33:12 +08:00
为啥不来用 Python 呢?用了 10 年依然觉得 Python 是抽象程度最高的语言,代码量最少。
|
146
lap510200 2021-11-25 11:47:17 +08:00
@tabris17 你这带有鄙视链了 nodejs php 就意味着开发者水平差吗 写 java 的也大把的人只会框架
|
147
stach 2021-11-25 11:50:02 +08:00
人生苦短,我用 Python ,不掉头发。
|
148
stach 2021-11-25 11:50:47 +08:00 1
高低搭配: python 写业务, go 写中间件
|
149
libook 2021-11-25 12:09:21 +08:00 5
好家伙,竟然还没进水深火热。
Go 只有在国内这么火,海外其他地方还是比较百花齐放的,到现在不少人用 PHP 、Ruby 也没见人鄙视。 国内普遍从众,而且危机感过强,以至于一门技术只要有较大的宣传力度都可以有不错的普及率,因为很多人都觉得某技术栈火了,自己不换就很快会被淘汰了。 Go 一开始的宣传定位是系统开发,也确实有 Docker 这种杀手级应用,甚至扬言要取代 C++(后面就知道了这完全是夸大宣传,至少 Google 自己的工程师不买账),最终只在微服务架构中找到了自己的市场(这个领域确实做得挺好),整个技术栈生态也朝这个方向发展,如果要做的项目不是这个方向的,那么很可能选其他技术栈会更游刃有余一些。 我个人的感受就是被其他技术栈的现代化特性惯坏之后,Go 用起来实在难受,说技术倒退是一点都不过分的。 但企业生产从来都不是看这些方面。 当今企业生产有些比较头痛的问题需要解决,如人才紧缺、协作问题、代码维护问题。 而 Go 恰好是一款精准 Hack 企业生产问题的“产品”,从个人角度来看,Go 很简陋,但正是这种简陋,产生了较高程度的统一化,当一个需求只有一种解决方案,或者不同人写出来的代码都是一样的时候,不少企业生产问题也都自然解决了。 Go 很烂,但不得不说,特别适合当下的生产需要。 |
150
liyhu 2021-11-25 12:41:12 +08:00
有钱就行,管它什么鬼
|
151
JohnSmith 2021-11-25 12:45:55 +08:00
以前都是争论 “php 是最好的语言” 🙄 ,时代变了
|
152
bk201 2021-11-25 12:49:03 +08:00
我猜如果不是 k8s ,go 也发展不起来。
|
154
leafre 2021-11-25 13:10:55 +08:00
非要加最后一句就是找骂嘛
|
155
charmToby 2021-11-25 13:17:50 +08:00
Code is cheap, show me the money.
|
157
gowk 2021-11-25 13:31:26 +08:00 6
|
158
tbxark 2021-11-25 13:44:46 +08:00
写个自己玩的小后台用 go 还是挺好的,用 springboot 随便就几百兆内存,一下子给我的小服务器挤爆了
|
159
byte10 2021-11-25 13:55:30 +08:00
|
161
intmax2147483647 2021-11-25 14:47:56 +08:00
@lianghuan 经典
|
162
ScepterZ 2021-11-25 15:01:54 +08:00
1 、可以用工具转一下,ide 确实没法对应,不过一般反正 json/yaml 也是在配置平台上,ide 里怎么也看不见
2 、找包这个应该只是习惯问题,go 是包少,但是搜的方法没觉得和 java 有啥区别 3 、err 确实一堆代码,忍吧 |
164
cloud107202 2021-11-25 16:17:49 +08:00 1
看淡点,这跟 13-14 年 v 站吹 python 踩 Java 的画风不是完全一样么
历史不是简单的重复,但却有惊人的相似 用着公司的语言挣钱,用自己喜欢的语言写业余项目,没什么好吵的 |
165
ykrank 2021-11-25 16:37:38 +08:00 1
说到底不还是 go 的生态不大行么,甚至这个帖子里的 go 吹都承认这一点,只能想着怎么把它包装成不值一提的小缺点。
不过对 go 的印象最深的还是最开始听 go 是可以脚踩 C++,不知道为什么现在要自降身份,来和 java boy 干饭吃了。 现在和 c++干起来的还有个 rust ,不知道 go 要不要和这兄弟 PK 下 |
166
snowlyg 2021-11-25 16:40:25 +08:00
就像骑自行车的人,嘲笑开汽车的人:他们的车竟然还要定期加油,定期保养。容易堵车不说,路况不要小于一米五的路面就过不去。汽车真的太恶心了,特别是超级跑车更恶心,一个减速带的过不去。人生苦短,我是不适合开超跑了。
|
167
matrix1010 2021-11-25 16:56:41 +08:00
Go 这个语言写个能用的东西很快。得益于 goroutine 的强大性能,甚至说写个能支持高并发的东西也挺快。但是要想写一个对别的开发者友好,具有一定通用性,方便扩展,易于维护且方便测试的东西,就需要很高的设计能力与品味了,而且很多时候必须要依赖代码生成,又进一步提高了门槛
|
168
pokeyou 2021-11-25 17:49:51 +08:00
也就 sprinboot 出来之后 java 才感觉好用的吧。 大学那会自学 ssh ,被一堆 xml 搞伤了,完全不想碰 java 。
|
169
dongsoso 2021-11-25 18:19:08 +08:00
结论:go 不如 spring
|
170
morty0 2021-11-25 18:22:41 +08:00
go 的优势是云原生啊, 跟 k8s, docker 很契合, 加上 goroutine 的并发能力不错
|
171
skiy 2021-11-25 19:30:02 +08:00
各语言有其特点。GO 写高并发很不错,写服务也不错。写 WEB 和别的系统层的话,我觉得还是别的语言好些。
|
172
FightPig 2021-11-25 20:52:07 +08:00
虽然我从大学就一直写 java ,但现在好多年不写了,太啰嗦了,go 的 err 是不舒服,但也算清晰,编译也快,
|
173
sherlock1122 2021-11-25 20:53:35 +08:00
完了,我从来不用 JAVA ,也是 JAVA 黑。
就那高内存占用,代码臭长,运行麻烦,就不会用。 |
174
littlewing 2021-11-25 23:37:52 +08:00
来,用 C++ 吧
|
175
seakingii 2021-11-25 23:40:09 +08:00
来吧,RUST,明日之星
|
176
RuLaiFo 2021-11-26 00:18:52 +08:00
投 JAVA 一票
|
177
holulu 2021-11-26 08:27:14 +08:00
只要钱够,不怕恶心
|
178
Nich0la5 2021-11-26 08:51:48 +08:00 via Android
前面说 Python 的兄弟们,虾皮其实就是从 py 刚转的 go
|
179
yjd 2021-11-26 09:01:55 +08:00
java 看着代码又长又臃肿,只是感觉。
|
180
simo 2021-11-26 09:21:49 +08:00
有没可能,多年后,两种语言甚至多种语言都熟悉了,看法可能会不同呢?
|
181
vincent7245 2021-11-26 10:59:52 +08:00
哈哈哈哈哈哈哈,语言都是工具,只要钱给够了让我汇编撸一个电商我都干
|
182
Maxwellwenjie 2021-11-26 11:24:40 +08:00
go 以前碰瓷 4,5 年前 C++,现在碰瓷 Java ,再过几年碰瓷哪个呢--PHP 、JavaScript 。。。?
|
183
INCerry 2021-11-26 13:28:39 +08:00
@sgissb1 不过.net framework 已经是过去式了 现在都是.NET Core 或者.NET5 、6 publish 的时候也可以选择自带运行时 目标机也不用装.net framwork
|
184
gollwang 2021-11-26 14:22:24 +08:00
习惯了什么都是伸手就来,当然会觉得从头开始繁琐且别扭,语言本身没啥问题
|
185
mintchiu 2021-11-26 18:39:12 +08:00
那也只是 java 牛逼,不是你牛逼。你怼 go 干啥呢?你觉得你一个小白有资格评价吗?
|
186
ncepuzs 2021-11-27 08:29:42 +08:00
|
187
xumng123 2021-11-28 12:52:14 +08:00 via iPhone
一堆傻冒所谓的架构师
|
188
flynaj 2021-12-01 21:23:21 +08:00 via Android
把 go 当 Java 用肯定累死,要找 go 的方法,包。
go 的包管理比 Java 要先进很多,前提是你要回用。 |
189
2NUT 2022-03-22 08:49:39 +08:00
|
190
allgy 2022-12-01 18:04:35 +08:00
厨师不行怪灶台不好
|