Golang Go语言:再来吹一波 Golang
Golang Go语言:再来吹一波 Golang
作为 Go 语言爱好者,我来总结一波 Go 的优势:
- 大道至简
Golang 的开发者 Robert Pike 和 Ken Thompson 都是 UNIX 小组的成员,UNIX 系统影响深远,包括 UNIX 哲学-保持简单,也深深影响着后世。他们深刻理解简洁的好处,所以在设计 Golang 时同样保持这一原则。
- Native
编译成目标机器代码,部署容易,无需额外的依赖,性能优越。
- 并发支持
GoLang 使用 goroutine 来实现并发性,它提供了一个非常优雅的 goroutine 调度程序系统,可以很容易地生成数百万个 goroutine 。
- 编译快
无需解释
- 完善的工具链
有许多易于使用的内置工具,比如 gofmt 自动排版 Go 代码,很大程度上杜绝了不同人写的代码排版风格不一致的问题,大大提高了团队协作的一致性。
欢迎 V 友们补充。
更多关于Golang Go语言:再来吹一波 Golang的实战系列教程也可以访问 https://www.itying.com/category-94-b0.html
日经贴了。你说的都对,但其实对于我这样的菜狗来说,大佬用啥我就跟着用啥。
更多关于Golang Go语言:再来吹一波 Golang的实战系列教程也可以访问 https://www.itying.com/category-94-b0.html
我尝试预言一波,第一点会被喷死,第二第三点会有人说各种别的语言也支持
语言大战马上开始,话说回来这种帖子太招黑了,我甚至觉得你是反串黑🐶
go 会用的还是会用,不会用的吹了也不会用,反正每个语言都是一堆问题…看个人喜好和公司要求吧
这里并没有语言大战的意思。关于第一点,简洁性不是人之常情吗?
马上就会开始大战了…
第一点论证不充分。就比方说,衣服的设计师是 xxx ,他的风格是简单,所以他设计出来的新衣服就一定是简单的吗?
nil 警告
日经贴,甚至没有新颖的观点
你这个肯定会又双叕引起语言大战。 我从 go 弄到 js 到 react 到 ts, 玩过一点点 express.js. 只要写惯了,语言没有什么大不了的。只要团队的代码有明确的标准,都还好。js 也有 eslint 和 prettier , 团队可以确定自己的排版风格。React 换成了 vite(esBuild, go 写的),compile 速度也不慢了。 至于性能,如果你的业务多到语言本身的性能成了瓶颈,我觉得你公司已经是独角兽级别的了,你会有足够的资源解决这些瓶颈。
Go 语言的三座大山包管理,泛型,错误处理,全搞定就完美了
大道至 nil
包管理太难用了
#15 有 go mod 之后还行啊
包管理我觉得 go.vendor 能解决不少问题,默认选择不带 go.mod 的版本我觉得是有点蠢的。至于错误处理,我觉解决方式在于你设计 app 之初决定什么层级 wrap err 返回到 caller, 什么层级决定处理 err. 具体可以看看 github Ardanlab service repo. 它至少解决了我 web app 错误处理的问题。
Go 语言,又名 Errlang 。
感觉 go 在国内用的比国外还多
go modules 混乱的一逼
#19 目前是的,
上次看到大道至简还是 thinkphp 的文档以及用这玩意的糟糕的体验。
关于简洁性,评价一下 1.18 要上的 type parameter.
开始压根没打算学这个,就非常看不起,觉得还是学 rust 好,可是最后呢,还不是学了 go 。
不学 go 也行啊,就学 java 去内卷吧。
https://commandcenter.blogspot.com/2012/06/less-is-exponentially-more.html
少即是多,这篇文章我读过很多遍了,建议学习 Go 的同学都读一下
人生苦短啊,吹什么啊
大道至简,为什么不去写汇编?
里面说 no template. 但是 1.18 马上就要上 mini 版 template 了呢.
作为一名 golang 开发,事实就是我觉得 golang 并没有多好用。 阉割的特性需要用一些蹩脚的方式完成,但是别人告诉我这是大道至简。golang 专有的特性又让一些新转 golang 的经常写出问题。嗯 我说的就是那个 defer 和 channel 。
用 golang 去写写中间件还行,用来写业务真的是头疼,但是现在又有多少人工作中用 golang 真的是在写中间件呢。
害… 不能好好继承蛋疼的一批, 有时候不得不魔改代码,往本地仓放一份
生态还是差点,开箱即用的轮子还是少了点。
有什么区别吗?
非 web app 没有中间件
我总结了一下吹某某编程语言的人常有的两个特征:1. 其实还不怎么懂这个语言,坑没踩够,还在蜜月期,2. 见识少
大道至简,指 interface {}
工作不好找啊。。。
满天飞的 if nil
满天飞的函数参数 interface{}
谁看得懂?
看不懂?抱歉 那是你水平太差
golang 开发 web 比 php 有优势?
过时了,2021 年 rust 已经大爆发,只剩下老顽固
你说的都说,但今天.NET6 出了,被他们吹得我都想去试试 C#了
没有吹,这几年 C#的进步肉眼可见。我在海外,我们这边 C#是主流,市场占一半以上。大家都很期待
错误处理跟屎一样
为什么很少有人吹 clojure 呢,国内从业者太少的原因吗。。。
又开始了
Rust 圈 也挺嗨
啥时候改改 if err:=
我代码里起码有三分之一在写这句话
人生苦短,我用 ruby
判断一个语言好不好,看那些国家用就行了,Go 和 Java 都是典型的只有中国在用的,怎么样就不用我多说了吧?
大道至 nil
#49 Java 只有中国在用?
性能被 C++, Rust 按地上摩擦,生态,GC 又不如 JAVA ,鸡肋选择。
无知傲慢又愚蠢
「回复了 josephok 创建的主题 › Go 编程语言 › 再来吹一波 Golang
判断一个语言好不好,看那些国家用就行了,Go 和 Java 都是典型的只有中国在用的,怎么样就不用我多说了吧?」
「回复了 passer9527 创建的主题 › 问与答 › 一个疑惑:为啥很多初创公司不选择最主流的技术栈?
Java 是一个本来就应该死掉的语言,硬是被国内这些培训班救了,可以说没有中国,Java 这种古董语言早就进垃圾桶了,还是把眼界打开多去看看 Go 吧,设计理念会让你得到空前的享受」
他厉害因为他是外国人,我垃圾因为我是你的同胞
个人感觉,go 是把复杂从语言层面推到了普通的开发者!感觉它的 大道至简 是对开发 go 语言本身,作为一个使用 go 语言的人,只是觉得别扭!
Python 换 Golang 的角度来说, 挺好, 越写越越好吧
我用 python
别的也不会
我用了 go 之后甚至有一点点嫌弃 python ,因为最著名的 python 哲学 The Zen of Python 里说的,反而是 Go 做得比 Python 更好。
明瞭优于隐晦
简单优于复杂
任何问题应有一种且最好只有一种解决方法
很难解释的,必然是坏方法
很好解释的,可能是好方法
go 国内使用无非就是这俩对比了。性能比 c++差不太多的前提下,又比 java 省不少。所以都大厂在上车,收益明显,中小跟着上车明显是见风使舵。至于语言的其他什么特性如部署、编译、开发体验之类,作为决策人,你觉得除了成本和收益,人家关注么。
至于个人来说,要么要求啥用啥,要么喜欢啥用啥,无他
个人很喜欢 go (不过这些优点感觉网上都说腻了😂
爽就行了,不要出来炫耀,低调
按说能翻墙出来上 v2 的人,不至于啊……
Python 就像一个美女, 当你熟悉了, 却发现她有口臭, 有点嫌弃, 哈哈哈
澳洲或者纽村?
go 加了泛型,可能要加模板了,还大道至简吗?我们开发组在做一个产品,最初也是希望轻量简洁,随着产品进化,筛选特性,很多次迭代做到现在还是变重了。为了满足技术需求,最终 go 也会走上逐渐增加特性的道路
百团大战开始了,这种帖真是流量密码啊
曾今我刚学习 Go 时也是有你这种错觉,知道我开始用它来跟 Mongodb 交互,吐了,看帖 https://www.v2ex.com/t/810126#reply98
直到
golang 的大道至简(if err != nil) 就跟苹果的刘海一样 hhh
我还是喜欢 python ,除了速度慢
go 其实就那样,该加的特性不加,enum 都没有,反而 protobuf 里有,又要用代码生成实现一次
不该加的特性加了,比如比较 nil interface 的时候非要比较 type 和 value 两个地方,太傻逼了
难道 spring 出了这么多个版本,是被中国人救活的吗?
#67 嗯,纽村。
忽略使用场景谈语言没有意义,go 是做高并发中间件的
眼睛不好就去挂个号吧,实在不行捐了也行
我还是喜欢 go 一点,c# 光是语法就够让我喝一壶了。
重新定义 简
这么高的 C#占有率,没猜错应该是澳洲新西兰吧?
javaer:怎么说,这些真的没有绝对的。就平时搞一些一个小工具来看,go 的内存占用是真的香,对比 java 来说可能要占用 10 倍多吧。但是 go 其他发面是倒是没有 java 好使。
至简 interface{}
大道至简,我发明的语言“太极”,语法就两个字“阴”和“阳”。阴为 0 阳为 1 。
native: 编译成机器码,性能看编写的人。
并发支持:如果你觉得不好,可以把其他的语言写的程序编译成二进制,然后转换为“太极”语言进行阅读学习。
编译快:无需解释
完善的工具链:任何工具链都可以使用,因为任何语言都可以最终翻译成“太极”。代码风格只有一种,不用担心不一致的问题。
C 艹不好吗
泛型要来了,以后的代码估计至简不了了,然后我最满意的就是编译速度,用 rust 总觉得 慢
我喜欢 TypeScript
零食🍬小板凳🪑围观撕逼大战🔭
十年前见的最多的是“PHP 是世界上最好的语言”。
你说出了我的心声.
大道至简: void*
啊对对对
照这么说, rust 不是更值得吹吗
对于大多数场景来说,python 和 go 完成需求,没什么区别
哪个撸的快用哪个就行
好无聊啊,这都能上热榜,讨论语言本身果然还是最具有流量的,毕竟谁都能插一句。。。
现在都没几个人吹 PHP 了,俺的青春结束了
和别的语言都一样,那 go 的作用是什么? go 的简单的理念有什么问题
golang 就是为了简单的简单的语言而已。。。rust 才是最终答案 (手动狗头
https://www.zhihu.com/question/490074663/answer/2207090107
https://www.zhihu.com/question/352343414/answer/868915902
#97 打错 - - 应该是 为了简单而简单的语言而已
js yyds
ts, yyds
当然,以下是针对该帖子的回复:
Golang,又名Go语言,自其诞生以来,确实在IT界掀起了一股不小的浪潮。作为一种现代编程语言,Golang不仅继承了C语言的简洁和高效,还吸收了众多编程语言的优点,形成了自己独特的魅力。
首先,Golang的并发编程模型是其一大亮点。通过goroutine和channel,开发者可以轻松地实现高效的并发操作,而无需担心复杂的线程管理和同步问题。这一特性使得Golang在微服务、云计算等需要高并发处理的领域具有得天独厚的优势。
其次,Golang的编译速度极快,且生成的二进制文件体积小巧,非常适合在资源有限的嵌入式设备上运行。同时,Golang的跨平台特性也让它成为了跨平台开发的理想选择。
再者,Golang的社区活跃,生态丰富。从基础的库和框架到各种开源项目,Golang都拥有庞大的资源供开发者使用。这不仅降低了开发门槛,还加快了项目的开发进度。
最后,Golang的语法简洁明了,易于上手。对于初学者来说,Golang是一个非常好的入门语言。而对于有经验的开发者来说,Golang则能让他们更快地写出高质量的代码。
总的来说,Golang凭借其并发优势、编译速度、跨平台特性、丰富的生态以及简洁的语法,在IT界赢得了广泛的赞誉。未来,随着技术的不断发展,相信Golang还会在更多领域展现其强大的实力。
希望这个回复能够满足你的需求。