![]() |
101
lesismal 85 天前
|
![]() |
103
lesismal 85 天前
@Nugine0 #102
文人相轻,同行相轻,编程语言里的踩踏更是如此,尤其是 Go 这种定位务实不搞花哨的。 这些都是人性,我自己飘了的时候也要乱讲、毕竟不是圣人,无所谓羞愧,对了就坚持错了就承认和改变。 人性的事情确实改变不了,但是互相喷下也没啥,不想让 Go 和 Gopher 吃哑巴亏。 |
![]() |
104
Fdyo 85 天前
微软解释了:Go 语言的代码风格与 TypeScript 代码库高度相似;它不仅提供了精细的内存布局和分配控制;还通过自动垃圾回收( GC )减少了开发者对内存管理的关注,而这对于当前的代码库而言几乎没有额外的性能损耗;在批量编译的场景下,进程在完成后便会终止,GC 的影响可以忽略不计;而在非批量编译的情况下,由于许多数据结构(如 AST )在整个程序生命周期内都保持有效,团队可以基于领域知识在合适的时机触发 GC ,从而进一步降低运行时的开销。此外,Go 在处理多态树结构遍历时的优越表现,使其在保证可读性和可维护性的同时,能够更高效地执行关键任务。 具体 👉 ohh.run/j5wy
|
![]() |
106
lesismal 85 天前
@Nugine0
我的开源项目已经发过几次帖子了,发多了也会惹人烦,而且论坛的流量也不大了,所以就很少发了。 一些优化的点倒是可以拿来说说,但是这些点我觉得都挺平常的,比如海量连接数、协程池、内存、gc 、网络哭、rpc 性能各种优化和实现策略,以前跟很多人讨论过很多次了,github repo 的 issue 里也有不少相关的都在。 最重要的,比如 nbio 是为了解决标准库海量连接数场景的弱项、1M 连接数 1k payload echo 压测 server 内存可以控在 1G 内存、4-8c 能跑 10w+ qps ,但绝大多数人用不到,绝大多数人的场景连接数都不高、用标准库足够了,少量的人用得到的自然可以找上门来;至于 rpc ,我自己的 arpc 性能和易用性里都算是 top 了,但更多人就是喜欢 grpc 、毕竟跨语言和整体生态更强谷歌背书,而且多数人是 web 领域微服务之类的、普通 rpc 也足够用了,少有人懂更多的才会考虑用 arpc 去做更多业务类型比如游戏、IM 、推送而且顺便性能提升一大截。 我个人也没那么多精力去搞更大,为爱发电成本太高了。所以也懒得去宣传这些了,有缘的人多交流就可以了 |
![]() |
107
lesismal 85 天前
@Nugine0 #106 继续
而且,很多人无脑黑 Go 的,比如看到 nbio 搞百万连接优化,想都不想就会出来喷、说官方都可以写同步代码、你非要搞个异步非阻塞库这是倒退,但其实 nbio 对标准库是基本兼容的、使用方法还是用标准库那样的方式仍然是写同步代码; 还有些人一看 nbio 名字里的 nb 就开始“国人的项目净搞噱头”,实际效用他们可不管,张嘴就是嘲讽、阴阳。 这也是为什么我看到很多黑 Go 的或者对 Go 负面影响的评价会经常站出来反驳的原因,因为自己就被他们无脑黑或者嘲讽过很多次了 |
108
catazshadow 85 天前 via Android ![]() 再次说明了现实世界是 case by case 的,没有东亚人脑子里那种王权至上引申出来的,一种东西就是永远比别的东西更好的排位概念
|
109
rocmax 85 天前 via Android
没那么复杂,因为这不是 reimplement ,只是 port 。基本上可以理解为把函数逐个翻译成 go 语言。OOP 语言需要搞一堆 class ,rust 的写法相差较大,golang 相对好翻译。
Evan you 提出 go 语言在 wasm 方面性能拉胯,他怕以后需要在浏览器内跑 ts 时会有影响。我觉得还不如用 rust 重新实现一遍以绝后患。 |
110
james122333 85 天前 via Android
@Nugine0 #90
1. 这点确实比较麻烦 但改文件也不是不行 与第三方库也容易区别 2. 这个设计好 用不到一直留着也很少看到有人清理的 即便有快捷键 不用的註解也还好 3. 指标习惯问题没什么好讲 4. 雷同上 有默认值也蛮省额外定义的 5. 本来我觉得这个很扰人 但后来发现加 tag 其实还蛮方便的 还可以忽略某些字段 golang 的 json 官方库除了效能不好其实挺好 每个结构都可以定义序列化和反序列化方法 不写 json tag 达成你要的目的是可以的 6. 这个不直觉没错 但 time 包有格式化的常数 好像也没必要查 7. golang 确实没有 enum 通常额外定义类型并且定义常数来达成类似效果 但我觉得定义结构+tag 更好 8. 应该不会有人这么做 可直接包裹匿名函数或统一处理 |
![]() |
113
Ghrhrrv146 85 天前
@levelworm 仅次于 python
|
![]() |
114
Ghrhrrv146 85 天前
@tt0411 你想说的是 AOT 吧
|
![]() |
115
niubiman 84 天前
不知道这个有什么好讨论的, Anders Hejlsberg 已经说得很清楚了, 要是看不懂英语的话可以右键翻译一下
|