5

go 语言提高 web 生产力

 2 years ago
source link: https://www.v2ex.com/t/818157
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

V2EX  ›  Go 编程语言

go 语言提高 web 生产力

  zwnozhuce · 13 小时 35 分钟前 · 3786 次点击
试了下 go 语言

- 开发代码简洁
- 编译部署简单
- 心智负担较轻

慢慢写一写工具,深入下
54 条回复    2021-11-27 02:46:16 +08:00

Bazingal

Bazingal   13 小时 24 分钟前   ❤️ 29

跟 java 比代码简洁,跟 rust 比编译速度,跟 c++比心智负担

sagaxu

sagaxu   13 小时 22 分钟前 via Android   ❤️ 1

if err 和 json 加字段别名,可比 Java 啰嗦多了

whwlsfb

whwlsfb   13 小时 21 分钟前 via Android

@Bazingal 哈哈哈,哥们一语道破

wdwwtzy

wdwwtzy   13 小时 21 分钟前   ❤️ 3

别闹,go 真的不能提高生产力,尤其是业务系统的生产力

hidemyself

hidemyself   13 小时 18 分钟前

go 能提高 web 生产了 😅

VANHOR

VANHOR   13 小时 17 分钟前   ❤️ 2

公司之前是 PHP ,现在切到 Go 了,写业务代码,真不觉得 Go 有什么生产力。

Numbcoder

Numbcoder   13 小时 15 分钟前

go 写一些网络组件工具挺好,用来写 web/业务系统怕不是脑子进水了吧,还生产力。。

ikas

ikas   13 小时 14 分钟前   ❤️ 1

b 格有了,kpi 长了,领导升了,项目烂了

ob

ob   13 小时 10 分钟前

借楼求个开源目录结构合理的 web 项目,参考下别人的优秀代码,现在的代码,都让我怀疑 go 到底哪里高效好用了。

felixcode

felixcode   13 小时 6 分钟前 via Android

年纪轻轻不去论资排辈,动不动还生产力,你把 Java 往哪放?退休前还有这么多年怎么办?

macscsbf

macscsbf   13 小时 6 分钟前

v2orz

v2orz   13 小时 5 分钟前

跟楼上一样

DeWjjj

DeWjjj   13 小时 5 分钟前   ❤️ 2

@ob go 的高效在于写微服务的时候一键打包,多服务器部署简易。

Ayanokouji

Ayanokouji   13 小时 4 分钟前

为啥没人提 kotlin (服务端)

aababc

aababc   13 小时 4 分钟前

@Bazingal 看破不说破

rm0gang0rf

rm0gang0rf   13 小时 2 分钟前

跟 php 比啥?

tt67wq

tt67wq   12 小时 58 分钟前

开发代码简洁?????

conkke

conkke   12 小时 56 分钟前

不如 php 一根毛(狗头)

INCerry

INCerry   12 小时 52 分钟前   ❤️ 5

C# 路过~

Leviathann

Leviathann   12 小时 51 分钟前

@Ayanokouji
我们在用,总体而言比较舒适,
但和 spring 结合还是稍微有一点小坑,比如 springboot 必须要 2.4+才支持 dataclass 的 rowmapper ,在需要用到的地方需要手写一下从 resultSet 构造 dataclass 的 lambda
然后 spring data jpa 的 entity 所有字段都要为 var ,因为底层也是用空构造器构造然后一个一个 set

zhujq

zhujq   12 小时 47 分钟前

web 生产力?我大 spring 不同意

xz410236056

xz410236056   12 小时 45 分钟前

@sagaxu #2 这不都 IDE 自动生成的吗。。。

Ayanokouji

Ayanokouji   12 小时 19 分钟前

@Leviathann Ktorm 了解一下?

Leviathann

Leviathann   12 小时 16 分钟前 via iPhone

@Ayanokouji 了解过 但是技术选型不是我做主。。

123jiayue

123jiayue   12 小时 15 分钟前 via iPhone

喂你们最近是要黑 go 吗 怎么这么多这种😄

Ayanokouji

Ayanokouji   12 小时 14 分钟前

@Leviathann 哈哈,我感觉 jpa 很不舒服

xsen

xsen   11 小时 57 分钟前   ❤️ 3

@Numbcoder 我倒觉得动不动说人脑子进水的人脑子进水了

我就是不明白,所谓的业务代码是都是指什么?不就是 curd 、还有业务逻辑么?难不成还有那些高深的业务代码

xsen

xsen   11 小时 52 分钟前

不过只能说 go 或者真的戳到某些人的痛点
像我们这边的,毕业 1-2 年的原先做 c++/java 或前端的同事,拿本书 1-2 周过一下,就可以用 go 写业务代码

我是真的很想知道,楼上诸位说的业务代码,都是些什么业务代码?
不就是数据库表 model crud 、api 设计实现;业务处理逻辑;第三方系统对接?

难不成还有别的什么不成

lyhapple

lyhapple   11 小时 46 分钟前

就算是用 go 写 CRUD, 我也觉得比用 java 写的爽.适合自己的,就是最好的 :)

cmdOptionKana

cmdOptionKana   11 小时 39 分钟前

我非常喜欢 Go ,但我只用来写小项目。

小项目,Go 的优势比较明显,但是大项目就没办法吹得太狠了,实事求是才能避免无谓的争论。

比如代码简洁:小项目 Go 可以几个 struct 加几个函数直接开干,不用像 Java 那样考虑层层抽象。但项目大了还是需要层层抽象,需求经过几轮疯狂添加之后代码也很难说有多简洁了。

又比如编译部署,小项目直接扔一个二进制可执行文件出去就行,当然方便。但是大项目的基础设施都搭建好了,一切都自动化滚动更新,此时 Go 的优势又不明显了。

matrix1010

matrix1010   11 小时 33 分钟前

Go 写个能用的东西很快。甚至得益于 goroutine 的强大性能,写个能支持高并发的东西也挺快。但是要想写一个对开发者友好,具有一定通用性,方便扩展,易于维护的东西,就需要比较高的设计能力与品味了,而且很多时候必须要依赖代码生成,又进一步提高了门槛。另外个人感觉 Go 写测试的难度也比其他语言大些,国内用 Go 的公司写单元测试的比例估计很低

nicebird

nicebird   11 小时 5 分钟前

@Bazingal 感觉没问题啊,优点很多

zhady009

zhady009   10 小时 59 分钟前

用 go 写 erp (狗头

lbp0200

lbp0200   10 小时 46 分钟前

在线人数小于 100 ,建议 PHP
在线人数小于 1000 ,建议 Java
最后考虑 go ,避免以下尴尬,一顿操作猛如虎,在线人数二十五

mason961125

mason961125   10 小时 45 分钟前

@matrix1010
> 另外个人感觉 Go 写测试的难度也比其他语言大些

求解释

balabalaguguji

balabalaguguji   10 小时 43 分钟前

你看下 go 跟 mongodb 的交互代码说不定就要放弃了,我就是

matrix1010

matrix1010   10 小时 19 分钟前

@mason961125 从我的角度来看对比 Python/Ruby 肯定难写很多,很多时候非常难 mock 。举个例子 goroutine, 别人的代码里有一部分逻辑是 goroutine 完成的,而你的测试在 goroutine 没完成之前就结束了,线上这个东西没问题,但你的测试结果就是不对。而且测试轮子不多,比如类似 factoryboy/factorybot 的轮子就没看到让我满意的。

liprais

liprais   10 小时 17 分钟前

- 心智负担较轻
这是认真的么.....范型和异常都没有这负担还不重?

wanguorui123

wanguorui123   10 小时 5 分钟前 via iPhone

CSharp 写 Web 最爽

joesonw

joesonw   9 小时 54 分钟前

@sagaxu json 字段别名, java 不也是得加吗? 不加 json tag 也是可以的, 默认都是 camelCase

jin7

jin7   9 小时 46 分钟前

go 语言有啥好的 库肯定没 java 丰富

beneo

beneo   9 小时 42 分钟前

库都是 github 的,我第一感觉就是会不会不稳定

jaywhen

jaywhen   9 小时 39 分钟前

第 n 届 v 站不定周期性语言大战开始!🍉

cmdOptionKana

cmdOptionKana   9 小时 32 分钟前

@liprais 你可能不知道心智负担的意思,没有泛型和异常只能说体力上更累,但心智负担确实是减轻了。

大多数情况下,越是抽象,心智负担越高,越是 verbose 则心智负担越低。

iamv2er

iamv2er   9 小时 27 分钟前 via iPhone

日常 因为语言吵闹 好无聊 真的

huigeer

huigeer   8 小时 23 分钟前

目前入坑,感觉实现一个 web api 框架好 easy 。看起来好透明,😋。真到实际业务的各种封装,还没体会到。

sagaxu

sagaxu   8 小时 13 分钟前 via Android

@joesonw go 的导出成员首字母要大写,跟大多数公司的 API 规范不一样,只能挨个字段备注别名。Java 没有首字母大写的习惯,且可以在 class 级别或者 json 库全局级别设置不同的命名规则,大部分情况下不需要挨个字段指定。

akyle

akyle   7 小时 38 分钟前

没必要,要开发效率就选 Java ,而且还可以本地化。

cutchop

cutchop   7 小时 38 分钟前

node 天下无敌

wonderfulcxm

wonderfulcxm   7 小时 30 分钟前 via iPhone

试过一段时间,简陋的语言,要啥没啥,写起来好累。

ClericPy

ClericPy   7 小时 19 分钟前

all-in golang 的国内公司也不少了, 他们选择的理由够直白的了, 比如说

solos

solos   6 小时 3 分钟前

go 堪称完美

yxx1993

yxx1993   5 小时 23 分钟前

go 在 web 方面比 php 性能好,但是在 web 方面还是没有 laravel 这种专业 web 框架有生产力。个人见解

windseekerjack

windseekerjack   1 小时 47 分钟前

@zhady009 之前公司还真写过,并没有什么问题,不是很懂有什么方面的业务对特定编程语言有难度

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK