有没有用 node 写后端的?

2021-03-14 11:31:00 +08:00
 fxjson
大家有没有用 node 写后端的?最近用 koa 结合 ioredis,sequelize,winston 写了个玩具,写起来挺快的,有没有用 node 写生产环境后端的?通常你们结合 typescript 开发吗?尝试添加了下 typescript,感觉代码有点乱了,类型声明可用可不用,有的库需要安装 types 有的又不需要,有的库又没有 ts 声明文件
7197 次点击
所在节点    程序员
47 条回复
pastgift
2021-03-14 21:22:37 +08:00
还在用 Express... 做久了一大堆现成的代码,开发起来很快,也懒得换
hareandlion
2021-03-14 21:32:05 +08:00
用 express,上 ts,把 lint 配置作为代码文件的一部分上传...
oliver2bao
2021-03-14 21:48:53 +08:00
用 egg 写过公司项目,自己写的项目都是 express 没有用到 ts,用 eslint 对代码格式化,然后用 husky 和 eslint 对代码格式进行提交前检查
zieglar
2021-03-14 22:08:53 +08:00
想了解一下不喜欢 nestjs 的原因是什么?
nestjs sailsjs loopback 我都用来做过一些项目,目前选择深耕在 nestjs
Sapp
2021-03-14 22:55:51 +08:00
用 Nestjs,前端也能写一点后端,而且写起来非常简单,也不用操心项目规范和代码组织,反正他都定好了。本身基于 ts,写起来提示非常全面简单,文档都不咋用看。但是数据库我依旧玩不转
zieglar
2021-03-14 23:05:31 +08:00
@Sapp typeorm 其实相对来说挺简单的,也有中文说明文档
leopod1995
2021-03-15 01:04:11 +08:00
三年 node 后端...
从 Express-> Koa2 -> Nest -> Egg 总体来说是越写越舒服的。
Express 算是 node 框架的基石,大多数现有框架都是基于 Express 二次开发。自己玩造轮子可以玩这个。
Koa2 算是工业化的一个里程碑,写起来就是写 js 的感觉。
Nest 基数大的最主要原因,就是因为 Java 后端转过来写的人多,完全 js 版本的 spring 框架风格,AOP, 对面向对象思维的后端很友好。我写起来感觉最不舒服的一点就是太重了。。 感觉是写 java 。
Egg 也是基于 Koa2 二次开发的,目前来看开发效率还是挺高的,社区活跃,文档很好。

生产 ts 还是要上的,真的是用了 ts 就回不去了,读别人代码舒服,自己写 focus 业务。
wanguorui123
2021-03-15 08:06:30 +08:00
Node 写大型系统路过
macha
2021-03-15 08:52:41 +08:00
5 年前写过,那个时候还是一片芒荒,callback hell 满天飞。现在应该好太多了。
JoStar
2021-03-15 09:47:53 +08:00
我也很疑惑 nodejs 做后端的优势区间在哪儿?

看到不少人说 nodejs 高并发性能很不错,但是没有找到具体数据说到底有多不错。

而且,相比如 go 怎么样呢?
(前端工程化中的 esbuild 就是利用 go 写的,性能完爆 JS 几条街)
buzailianxi
2021-03-15 09:55:31 +08:00
用什么写都一样 curd 的多啊
jmyz0455
2021-03-15 10:15:25 +08:00
@JoStar 同问。
rbq123456
2021-03-15 10:26:30 +08:00
@JoStar 优势区间主要是对前端来说不需要再去学一个新的语言就可以开发后台,至于性能,不太能比得上 golong
yeze322
2021-03-15 11:17:59 +08:00
nestjs 。分清楚是“不喜欢”还是“不理解”nestjs 抽象解决的问题。
nestjs 是 node 框架里为数不多知识经验可迁移至传统后端的了
ERRASYNCTYPE
2021-03-15 11:25:28 +08:00
看人,习惯不好写什么都够呛。
js 没有说项目代码难以控制,完全是由于过于自由+缺少类型检查导致的,可以用 joi,可以写 jsdoc 。
只是你用了 ts,上面的可以,都自带了。但是不保证就所有 npm 的包都支持 ts 调用,可能有部分需要自己写描述,但这一小部分也不一定就能碰到,真碰到了,说不定还能够混个 pr 。
KouShuiYu
2021-03-15 11:36:55 +08:00
公司的用 egg,自己的用 koa
zivyou
2021-03-15 12:38:58 +08:00
用过两年 koa2,项目做大了还是有点麻烦。1. 公司内部的 node 生态不够好,一些部件没有 node sdk 。2. JS 自身的面向对象有点难受,强行上各种设计模式会很蹩脚; 但是不上的话,代码的维护和迭代有很是问题
wednesdayco
2021-03-15 14:06:36 +08:00
nest 在做中间层应用 并发确实不错 写起来基本没啥大问题,
fxjson
2021-03-15 22:29:19 +08:00
@zieglar 概念多,
@oliver2bao 亲,您用 eslint 开发 node 项目有最佳实践吗,可以分享下您的 eslintrc 文件吗,有用--fix 有些常规错误修复不了呢,比如变量没有使用,多分号了等等
taowen
2021-03-15 22:35:34 +08:00
@JoStar 如果前端是一个独立的 typescript 工程,后端是一个独立的 typescript node.js 工程,两者之间的 typescript 没有 import type 的关系。我也觉得后端拿 node.js 写没啥好处,不如用 java 。至少也要做到部分类型定义的复用,如果业务上有需要,还可能要做到部分代码的一致性保证(比如前后端算两遍价格,前后端做两遍验证)。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/761466

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX