V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
The Go Programming Language
http://golang.org/
Go Playground
Go Projects
Revel Web Framework
hambman
V2EX  ›  Go 编程语言

golang 做 web 应用能支持类似 wordpress 的插件吗?

  •  
  •   hambman · 2020-03-27 13:32:30 +08:00 · 2506 次点击
    这是一个创建于 1704 天前的主题,其中的信息可能已经有所发展或是发生改变。
    go 作为编译语言,开发 web 应用能支持一个开放,灵活的插件系统吗?类似 wordpress, drupal 这样的
    8 条回复    2020-03-28 10:23:16 +08:00
    mengzhuo
        1
    mengzhuo  
       2020-03-27 14:51:15 +08:00
    go 的 plugin 了解一下
    SingeeKing
        2
    SingeeKing  
       2020-03-27 15:56:04 +08:00
    楼上的 plugin 正解,想想其实就是类似于动态链接库
    virusdefender
        3
    virusdefender  
       2020-03-27 16:19:01 +08:00
    有 go plugin,但是距离真的可用还非常非常远
    GreyYang
        4
    GreyYang  
       2020-03-27 21:21:13 +08:00
    后端使用 plugin 作为基础来开发是可以,但是还要解决很多问题, 例如 wordpress 的插件是前端 UI 和后端功能一起安装发行的,怎么约定插件的前端实现,还有和主平台的联动,主平台为插件提供哪些功能(例如数据库操作)等等. 如果不使用 plugin 还可以使用 rpc 等方式来实现插件,甚至可以跨语言.
    xcstream
        5
    xcstream  
       2020-03-28 00:32:17 +08:00
    可以 但没必要
    擅长的点不同
    hambman
        6
    hambman  
    OP
       2020-03-28 00:59:02 +08:00
    plugin 看起来的确是动态链接库,@GreyYang, 的确,web app 的插件不仅仅是后端,前端,打包都重要。看起来 go 适合做性能需求高的系统,类似于 wordpress 之类的需要生态系统的不是它的强项。

    对比 node.js ,有什么特点是 node.js 有但是 go 还欠缺的吗?
    GreyYang
        7
    GreyYang  
       2020-03-28 09:33:49 +08:00
    @hambman 一般应用的东西哪种语言都能实现, 针对于你的问题是开发 web 应用, 我想这两者区别不大, 甚至经常被讨论的性能问题都不太重要, 因为应用稍微复杂一点最终你会发现性能瓶颈往往是我们写的业务代码而非编程语言导致.

    硬要说的话 go 没有泛型确实有些不方便,但是快官方支持了. node.js 全动态类型也是另一个极端, 通常用 typescript 中和一下...
    hambman
        8
    hambman  
    OP
       2020-03-28 10:23:16 +08:00
    @GreyYang 谢谢, 听了大家的意见打算找机会试试 go.
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   4442 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 10:13 · PVG 18:13 · LAX 02:13 · JFK 05:13
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.