Node.js与Golang怎么选择?
高速开车换底盘记:Windows 与 Linux 部署都抗住了,但修车任务艰巨 https://www.cnblogs.com/cmt/p/11362531.html
@zengming00 @hldgaoshuo 不看项目需求和当地人力情况都是耍流氓。
如果你是做云计算,虚拟化,或者一些算法之类的,优先考虑go ,这个node 并不适合。 如果是web 或者业务系统,优先考虑node.js (纯 ts) ,开发,维护成本都低于 go ,性能也不差。 如果是嵌入式 ,两者都可以,看技术选型。
我们目前架构是 k8s+istio 用什么语言都可以,主 node.sj 副 C++/Rust ,基本满足大部分需求了。 最后强调一点,用node.js 一定用 typescript 。
@zuohuadong 看什么成本,技术这东西会的人越多越不值钱,随便找个人就把你替换了,既然有一手遮天的机会干嘛不把握好,起码我在这里成本就没有增加,反而还是减少的 现在为什么说程序猿越来越难找工作,因为大家都知道程序猿赚钱厉害,各行各业都转行干程序猿,一些培训班两三个月就出来一批人,我有幸帮公司招了次人,拿到拉勾的企业账号,那些人要的薪水低得你都不敢想象,所以现在程序猿不值钱了,刚入行的程序猿薪水甚至可能比不过餐厅服务员
技术的选型需要兼顾很多因素,很重要的一点就是要从团队的实际情况出发,没有完美的开发团队,也没有万能的语言,选择适合于当下团队的,就是最好的。至于golang和nodejs,个人建议,如果是想走后端路线,还是以golang为主,至于nodejs,能做的事情确实很多,用来写大型后端应用也不是不可以,但是相比较于golang,其动态类型和单线程模型决定其性能还是稍逊一筹
@oneWalker 哪怕我写了快十年的js,不小心都会写错(比如变量名)。团队协作项目不上 ts 肯定会翻车(bug 以及后期维护,增加需求,重构)。 个人觉得 ts 最重要一点是避免给自己以及接手的人挖坑,同时也避免踩别人的坑(函数签名写在那儿,出了问题就不是我的锅了...)