gpt4 book ai didi

javascript - 如何整合Golang后端和Javascript(three.js)前端?

转载 作者:IT王子 更新时间:2023-10-29 01:07:07 27 4
gpt4 key购买 nike

我想使用我最喜欢的编程语言 Golang 编写 3D 应用程序。但是,我宁愿不直接使用 native OpenGL 作为图形前端,因为这将需要比我愿意容忍的更大的学习曲线。此外,我真的不想使用像 go:ngine 这样的 Golang 游戏引擎。

在做了一些研究之后,我发现了惊人的 WebGL Javascript 库 three.js,我非常感兴趣,以至于我在几个小时内完成了 Javascript 入门类(class)。我根本不是真正的 Web 开发人员,所以我想知道主要用 Go 编写我的应用程序但使用 three.js 前端对我来说有多实用。

一些具体问题:

  • 像这样使用 Javascript/three.js 作为 Golang 服务器的前端是否值得/实用?
  • 如果值得,我可以在哪里学习如何将两者干净利落地结合起来?
  • 如果真的不值得,我还有哪些选择?

谢谢,感谢任何回复。

编辑:

Do you plan to make operations on geometry in Go, possibly in realtime and communicate with your Javascript layer using Websockets?

是的,这就是我现在的想法。我打算我的(Golang)程序根据用户的一些参数生成顶点和三 Angular 形流。每个“结构”都是在用户提供参数后立即生成的(我在 Javascript 前端看到的是滑动条 + 输入框)。

这是 Go 程序可能生成的示例,绘制在 GNUPlot 中: pic
(来源:alexozer.com)

If this is the case you underestimate Javascript a bit. You should write most of your application in Javascript and use Go as a classical backend service layer like user accounts, persisting state, etc.

我愿意这样做,除了这些原因:

  • 核心生成过程从根本上依赖于 Goroutines 和 channel
  • 我对网络开发几乎一无所知,包括前端和后端

所以我想我是在询问这三种可能性之一的实现细节:

  • 用 JS 编写大部分程序,包括生成器,用 Go 编写最小后端
  • 用 Go 编写大部分程序并使用 JS 作为图形前端
  • 还有别的吗?
  • 最佳答案

    我建议忽略整个 Websocket 方面,因为它只是一种可能的优化(甚至可能不是)。

    如果你需要依赖 Go 的并发模型,那就去做吧,用 Go 编写你的组件,然后用 Go 编写一个 Web 服务器,它从 HTML 请求中获取参数,使用它们来计算结果并在一个JSON格式。

    在前端,您将只专注于在用户更改参数时发送此请求,并且为了显示 JSON 数据,您可以立即使用 ThreeJS。

    不过,您仍然需要学习一些网络开发和 Javascript。但是,嘿,他们说网络是 future ;-)

    我认为这是适合您的情况的方法,因为您的应用程序以非常严格的请求-结果方式运行。

    关于javascript - 如何整合Golang后端和Javascript(three.js)前端?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25467405/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com