千家信息网

GO的作用什么呢

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,这篇文章的内容主要围绕GO的作用什么呢进行讲述,文章内容清晰易懂,条理清晰,非常适合新手学习,值得大家去阅读。感兴趣的朋友可以跟随小编一起阅读吧。希望大家通过这篇文章有所收获!Go 的优点:实现快 +
千家信息网最后更新 2026年11月02日GO的作用什么呢

这篇文章的内容主要围绕GO的作用什么呢进行讲述,文章内容清晰易懂,条理清晰,非常适合新手学习,值得大家去阅读。感兴趣的朋友可以跟随小编一起阅读吧。希望大家通过这篇文章有所收获!

Go 的优点:实现快 + 资源占用低 + 任意环境随便跑,综合考虑在很多场景十分好使 。

  1. Go 适合造轮子,哪个库不好用就自己造。

  2. Go 适合写工具,比如 hugo 、hub、fzf,还有国人写的 linux 下的百度 pan client 都是 go 实现的。

  3. Go 适合实现 C/C++ 一部分业务,Java 的大部分业务。

  4. Go 适合做最外层的胶水,通过 RPC/REST/CGO 粘合不同语言的模块,而在这个胶水层还可以实现各种业务逻辑,又不用像 shell/py/node 有诸多顾虑和局限。

Go 提供了纤程、指针、 unsafe, cgo 加上 C/C++ 兼容的内存布局和跨平台的汇编,有了这些你能做的事情的上限基本就非常高了。

所以问题不是它适合做什么,是你有能力用它做什么。

在用 Go 写一个渲染器,因为学图形,需要一个应用框架来复现各类图形技术、论文和学习实践 PBRT 。

开始用 C++ 和 Go 同时写,主要实现是 C++,Go 只用来做架构探路,搞搞快速原型。

中间需要实现一个异步消息框架,负责 GLFW 的 key event 和 window event 与图形逻辑、骨骼计算、camera 控制进行数据通讯,还要保证所有绘制 event 都在主线程做 draw call。这个功能用 Go 实现的逻辑 100 行不到,只用了3个特性:chan, init(),不定长参数。当初设计 + 查语法 + 写完 + 测试只花了大概 40 分钟,然后一直用到现在。

在做的过程中发现 Go 实现各种逻辑太方便了,而且基本上没啥干不了的,最后决定全部用 Go ,放弃 C++。

中间发现 Go 的标准库不支持 DDS 贴图,直接撸了个 Go 版的 DDS 库。大致就是看了下 wiki 了解了 DDS 格式,然后从 nv_dds 找到关键代码,逐行翻译成 Go 就搞定了,非常简单。

现在在写骨骼动画和 GUI, GUI 在参考一个日本人移植到 Go 的 nanovg 和 nanogui,非常有价值,他用 Go 实现了基于 OpenGL 的 draw api 还用 Go 搞定了 true type 字体的绘制。

因为需要管理大量模型的状态,打算用 orm + sqlite。但 gorm 的很多地方都不满意,也在考虑自己撸。

现在这个渲染器是这个程度:

Java 能写我的世界,C# 能写 Unity,Go 自然也能写游戏引擎,当然也能写其他更简单的系统,比如一些所谓"很复杂"的业务系统。

Go 不管写业务还是造轮子都很高效,既有高级语言特性,又能当更好的 C 用,构建部署也简单。

常规业务 Go 能被 C/C++ 碾压的主要就是瞬时的峰值内存,这个无解,但碾 Java 也没问题。

目前后端这块我没觉得什么是 Go 特别不适合干或者不能干的。

如果不用 Go,我估计也只会用 Rust,如果要写大量矩阵运算,泛型和操作符重载是仅有的我想要但 Go 没有的。

实际上用 Go 的很多也是多语言的牛人,比如 junegunn、spf13,都是背着几个几万 star 项目。

最后举几个比较偏但有意思的项目:

hunterloftis/pbr 一个 Go 写的基于物理渲染的光追渲染器

fogleman/pt 另一个光追渲染器

shibukawa/nanovgo 日本人移植的 Go 版的 nanovg,基于 OpenGL 实现了画框、画线、画字的 Go API,相当于原来 Windows 上的 Direct Draw

shibukawa/nanogui-go 上面那位作者移植的 Go 版的 nanogui,基于他移植的 nanovgo 实现的 GUI 库

Shopify/go-lua Go 实现的 lua 5.2 VM

wooga/go-entitas 一个非常精简的 ECS 实现

最后说一句,这个世界上有太多有意思的问题和领域值得学习和探索。

语言最终是用来表达你思想和思维的,只要能帮你快速解决问题达到目标,对你而言就是好语言。

什么是go

go是golang的简称,golang 是Google开发的一种静态强类型、编译型、并发型,并具有垃圾回收功能的编程语言,其语法与 C语言相近,但并不包括如枚举、异常处理、继承、泛型、断言、虚函数等功能。

感谢你的阅读,相信你对"GO的作用什么呢"这一问题有一定的了解,快去动手实践吧,如果想了解更多相关知识点,可以关注网站!小编会继续为大家带来更好的文章!

业务 语言 问题 逻辑 移植 功能 图形 就是 C++ 学习 作用 有意思 不用 世界 内存 内容 文章 框架 特性 篇文章 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 今日互联网科技 互联网科技有限公司经营范围 工业互联网科技新基建 互联网医疗科技 科技服务与互联网 狮子座互联网科技 极限挑战互联网科技 广西拼得多互联网科技有限公司 青岛中康互联网医疗科技有限公司 互联网金融科技公司干啥的 栖莱科技互联网股份有限公司 智腾互联网科技有限公司 阿大互联网科技有限公司 深圳市优智互联网科技有限公司 洛阳共同富裕互联网科技有限公司 广州富喜互联网络科技 吉林省码上互联网科技电话 科技互联网行业投资研究 互联网科技手抄报图片 互联网科技博主张洲 北京互联网科技有限公司 万易互联网科技 易通互联网络科技有限公司 盛创互联网科技有限公司 湖南洣水互联网科技有限公司扣款 启辰互联网科技 富国互联网科技002692 互联网与数字科技关系 科技互联网行业投资研究 陕西彩京云互联网科技有限公司
0