V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
newshbb
V2EX  ›  程序员

新项目采用纯 JS 技术栈还是 Go+JS?

  •  
  •   newshbb · 213 天前 · 2443 次点击
    这是一个创建于 213 天前的主题,其中的信息可能已经有所发展或是发生改变。

    最近要开展一个新项目,犹豫选型,大家从招聘,开发效率/成本上帮忙分析一下?本项目是私有化部署类型项目,所以性能上比较不那么重要,但是可以比较一下哪个更容易部署,而且需要支持服务端 windows/linux/mac/bsd 部署。

    33 条回复    2023-09-29 15:34:51 +08:00
    Nazz
        1
    Nazz  
       213 天前   ❤️ 2
    部署肯定是 go 更容易, 无任何依赖
    frankies
        2
    frankies  
       213 天前
    纯 js ,好招人,还便宜 doge.
    z1645444
        3
    z1645444  
       213 天前
    要不再描述多点?大概是做什么的项目?在哪个城市(如果预期包括远程就无所谓)?

    什么也不知道,只能说招 JS 开发者更万能,JS 全栈我在找工作的时候划到不少仅仅需要当地对应等级前端 1.5 倍工资的机会,甚至更低...不过对 web 后端模型、桌面后端(其实还是在玩浏览器,不过在优化上着重点又不太相同,难度也不小)的掌握程度和适合你们使用场景的最佳实践的掌握程度,可能会稍微失落一些。不过呢,产品的 idea 方向对了,体验棒了,甚至已经有不少客户了,那其实是运营更重要👉
    kkk9
        4
    kkk9  
       213 天前
    私有化部署类型 - go 编译好完事了,有钱再加个商业 vm 壳 / node 还要混淆加密
    容易部署 -> go 不用装环境,编译好直接开跑 / node 安装环境
    支持服务端 windows/linux/mac/bsd 部署 - go 直接开跑/node 在部分奇怪的系统上可能存在问题


    go+js UI 直接 JS 随便,核心放在 go 里面编译好加好授权
    monster1priest
        5
    monster1priest  
       213 天前
    项目大不大?后期维护、迭代复不复杂?

    一般来讲,python ,js 这类语言出活更快,但是考虑后期维护成本,就不一定了。
    BugCry
        6
    BugCry  
       213 天前 via Android
    强类型写业务写到崩溃,还是 JS 一把梭吧
    newshbb
        7
    newshbb  
    OP
       213 天前
    @kkk9 是的,我也倾向于 go+js ,部署很重要,对我们项目,毕竟要面向千奇百怪的自部署客户
    newshbb
        8
    newshbb  
    OP
       213 天前
    @monster1priest 开源项目,持续迭代
    newshbb
        9
    newshbb  
    OP
       213 天前
    @BugCry 算不上业务型项目
    newshbb
        10
    newshbb  
    OP
       213 天前
    @z1645444 的确是远程,堡垒机那种类型的项目
    rccoder
        11
    rccoder  
       213 天前
    没啥区别,主要还是看你招的到是咋样的人
    monster1priest
        12
    monster1priest  
       213 天前
    感觉 go+js 好一些,部署考虑 docker 吗?
    kkk9
        13
    kkk9  
       213 天前
    @BugCry #6 不会吧,规范的原型图,规范的代码,不应崩溃 😂 基本的 struct 那些都可以自动生成了
    pengtdyd
        14
    pengtdyd  
       213 天前
    纯 js +1
    zhuangzhuang1988
        15
    zhuangzhuang1988  
       213 天前
    熟悉哪个用哪个。
    jones2000
        16
    jones2000  
       212 天前
    后台 java 前端 js
    bianhui
        17
    bianhui  
       212 天前
    @monster1priest 维护也是 js 更快。至于规范不规范,啥语言都能写出不规范代码
    bianhui
        18
    bianhui  
       212 天前
    肯定是 js 一把搜哈。那些说装环境的。装环境能花都少时间,一个脚本一小时能安装 100 台。go 一小时可能连 sturt 都定义不完
    hamsterbase
        19
    hamsterbase  
       212 天前   ❤️ 1
    纯 js , 我说一下好处

    拿我的项目举例子 https://hamsterbase.com/

    1. 利用 react native nodejs mobile , 你甚至可以把 nodejs 项目部署到 iOS 和 安卓上。

    https://github.com/nodejs-mobile/nodejs-mobile-react-native


    2. 利用 trpc , 你可以在前后端共享同一套类型。 无需编写 API , 直接利用 rpc 通信。

    https://trpc.io/docs/server/routers
    Gota
        20
    Gota  
       212 天前 via iPhone
    给的信息太少了。如果整个项目就一个进程,没有任何外部依赖,那用 go 确实可以只输出一个包含前端资源的可执行文件,方便部署。但如果有数据库之类的外部依赖,那就简化不了多少了。

    从开发效率上讲还是推荐起步用 Node ,从 https://create.t3.gg 生成一套模版就能开始写业务了。
    YassoWithSpeaker
        21
    YassoWithSpeaker  
       212 天前
    必须 java+js 啊,
    version
        22
    version  
       212 天前
    混合就够了..K8S 分发直接 go sdk 对接..或者一些云服务..docker 对接 go 也蛮多的.
    其它 nodejs 或者 deno 一样无缝切换..
    再不济可以用上 wasm
    xingjue
        23
    xingjue  
       212 天前
    部署肯定是 go 更容易, 无任何依赖
    guochao
        24
    guochao  
       212 天前
    部署:
    > 需要支持服务端 windows/linux/mac/bsd 部署
    如果你能搞定不同端 go 的 CI (构建、测试),go 的评分会略微高一些,否则脚本类会好一些。

    其他因素:
    评分的构成还有你具体的业务,以及你所在的地区不同语言找到能用的人的难易度
    mmdsun
        25
    mmdsun  
       212 天前 via iPhone
    纯 js 。
    或者选 Java+JS

    不需要 docker 。
    java -jar 运行一切,数据库都打包 jar 进去,选 Mysql Embedded 这种数据库。
    静态资源直接放 spring boot resource 目录,nginx 都省了。
    整个项目前端后端数据库只有一个 jar 文件。
    newshbb
        26
    newshbb  
    OP
       212 天前
    @Gota 这个 t3 诱惑满满
    newshbb
        27
    newshbb  
    OP
       212 天前
    @Gota 与 nuxt 比呢?
    Gota
        28
    Gota  
       212 天前
    @newshbb Nuxt 算是 Vue 生态下的 Next.js 平替? 前端我只用过 React, 对 Vue 生态不太熟悉, 如果和 Next.js 功能一样自然没啥问题, 就是不清楚有没有 T3 这样的模板帮忙做整合.

    看了下你新帖的说明, 总控端用 T3 那套足够了, Agent 推荐用 Go, 自带交叉编译能省不少事.
    newshbb
        29
    newshbb  
    OP
       212 天前
    @Gota 对,agent 是 go 无异议了
    ccc1924
        30
    ccc1924  
       212 天前
    agent 已经选 go 了,服务端以 go 为主感觉会更合适

    另外部署一般不会很复杂吧,go ,js 都有很成熟的打包方案
    newshbb
        31
    newshbb  
    OP
       211 天前
    @Gota 接活不?
    Gota
        32
    Gota  
       211 天前 via iPhone
    @newshbb 现在在外面,微信发我,晚上聊聊看。
    newshbb
        33
    newshbb  
    OP
       211 天前
    @Gota 那个帖子留了邮箱
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2888 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 14:36 · PVG 22:36 · LAX 07:36 · JFK 10:36
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.