两年前,我用 NodeJS 为自己构建了一个小型服务器 - 一个基于 HTTP 的 SQLite 代理。当您需要通过网络与消费者共享数据集时,它非常有用。经过多次重构和新的需求,现在我终于决定用 Golang 重写代理,以获得更好的分布和内存效率。进展非常顺利,我几乎用 Go 重写了所有内容,甚至包括我最初不打算重写的部分,现在我相信,如果我将 Go 与 NodeJS 一起使用,我之前所做的 50-70% 可能会更好。因此,我已经向自己证明,Golang 对于任何后端密集型 Web 开发来说都是非常高效的,并且在开发速度方面几乎与 NodeJS 相当。与 C++ 相比,即使使用 Go 创建 NAPI 插件也非常容易,因为交叉编译。
现在我们来谈谈 Golang 的一个缺点,这与编程无关。
去年我主要作为自由开发人员工作。参加演出,有时还参加短期合同工作。我偶尔使用 Golang,主要是当我的任务与区块链相关时,我什至用 Go 编写了几个微服务。
现在我调查了就业市场,我有点失望,加密/金融领域是 Golang 在就业市场上的主要领域:(。大多数公司需要 3-4 年的 Go 经验(即使是零工),这很难如果您不在 FANG 或加密货币金融领域工作
。
当我查看我的工作提要时,就业市场上的 Golang 看起来就像区块链的 RoR,有点“用领域语言来查找”。
如果小公司和初创公司也青睐 Go,他们可以做得更好,就业市场也会有所不同。我相信Go可以为产品增加更多的价值。是的 - 一个宠物项目给了我这个视角。
谈论宠物项目。
我介绍 DAL:https://github.com/nesterow/dal
它处于早期 alpha 阶段,因为目前只有我在使用它。在当前阶段,该项目对于研究很有用,特别是对于那些想要为 NodeJS 编写本机插件或想要将其库移植到 Golang 的人,或者如果有人有时间来烤我:)
客户端部分是用 TypeScript 编写的,服务器可以用作独立的二进制文件(最佳性能)或 Nodejs 插件。
平安✌️
以上是我用 Golang 重写了我的 JS 项目,想分享我的经验。的详细内容。更多信息请关注PHP中文网其他相关文章!