Nodejs后端入门建议:写了4年的前端,目前想写后端,想从node入手。

发布于 1周前 作者 phonegap100 来自 nodejs/Nestjs

Nodejs后端入门建议:写了4年的前端,目前想写后端,想从node入手。
老哥们,有什么项目带我的。如果是外包的话,我近乎免费的帮忙开发,如果是开源项目的话,那你得先指点一下。node 的基本概念,还有 curd,我还是明白一些的。就想把 node 的水平提升到一个中级开发的样子。

14 回复

去 Github 上找一些开源项目的源码读
读完之后再帮忙解决 Issues


APUE UNP 先把这两本读了,node 没什么好学的,expres

我还没写完居然手一抖提交了。express 等常见框架或者 node 自带的模块也都不难学。不能说用 node 你就是在做后端了。目前先了解一下系统层面的接口,然后就会发现任何语言提供的能力不过是包装了系统调用,语言提供的数据结构,只要懂常见的数据结构,那也很好理解。这样,学会其他语言的使用不算难。

写了 7 年的后端,目前想写前端,回头一看,诶已经同时写了 4 年前端

自己用 node 上 express ;
实现简单的几个请求;
安装 mysql 或者其它数据库;
用 node 连一下 mysql ;
简单的写一下 sql 实现 curd ;
pm2 部署上线;
上 Github 找开源项目;
看别人怎么封装,想一下这么封装的好处;
再去看看 koa 或者 egg ;
然后基本就可以做后台项目了;


再往后发展
内存泄漏处理;
node 的关键性模块 fs,http 使用等;

然后横向扩展,和 java 差不多
数据库扩展、分布式与容器化等
中级到这里应该差不多了


再往后
学习使用 C++ 插件了
啃 v8 源码了

现在需要的是一个整体的项目经验。然后以后自己也能熟练开发 curd 。这些东西没有做过项目是不会知道的,哪些时候用什么东西,比市面上的其他好处在哪里。这都是需要实战才知道的。

CURD 可以在 B 站找 java 什么的课程里面的 CURD 章节看啊 至于为什么是 java 因为 java 的课程很多

nodejs 在 B 站也有那种培训班的录屏视频 运气好的评论里面也有相关实战项目 自学的话足够了

不考虑转 go?
前段时间原 node 创始人觉得 node 不好,还出了一个 deno,真是心累啊

我其实不建议从 node 入手后端,这会造成短期走得“快”,长期走得“慢”。
原因是 node 本身也并不包含很多核心的编程概念,比如并行,由于 node 采用 v8 引擎,所以执行方式也是单线程异步,这会导致无论你在前端还是在 node 里都无法深入了解多线程、并行、锁等这一类相关概念。
从长远来看,并不利于在全栈道路上的发展。

由于前端和 node 走的比较接近,所以 helloworld 用 express 来做比较好,但是 helloworld 之后,建议学习主流、稳定的技术,例如 java 、spring 。

我其实就想写 go,但是想先从 node 开始

如果只是入门的,类似于前端的仿站项目,github 实在太多了,都没什么参考价值,这种都不是在项目中的最佳实践,跟大家在公司里面的实际编码差距太大了

之前用 express 写的一个练手项目 https://gitee.com/bullet/express-study-guide ,很适合小白参考

作为有四年前端经验的你,转向Node.js后端开发是一个很好的选择,因为Node.js可以让你利用JavaScript这一熟悉的语言构建高效的后端服务。以下是一些入门建议及示例代码:

  1. 基础学习

    • 首先,确保你对JavaScript有深入理解,包括ES6+的新特性。
    • 学习Node.js的核心模块,如httpfs(文件系统)、path等。
  2. 框架选择

    • 推荐从Express框架开始,它简洁且易于上手。
    • 安装Express:npm install express
  3. 示例代码

    const express = require('express');
    const app = express();
    const port = 3000;
    
    app.get('/', (req, res) => {
        res.send('Hello, World!');
    });
    
    app.get('/api/data', (req, res) => {
        const data = { message: 'This is data from Node.js backend' };
        res.json(data);
    });
    
    app.listen(port, () => {
        console.log(`Server is running at http://localhost:${port}`);
    });
    
  4. 数据库集成

    • 学习使用MongoDB与Mongoose,或MySQL/PostgreSQL等关系型数据库。
    • 示例(Mongoose):npm install mongoose,然后连接数据库并进行CRUD操作。
  5. 实践项目

    • 尝试构建一个简单的TODO应用或博客系统,以加深理解。
  6. 社区资源

    • 利用Stack Overflow、GitHub等平台解决遇到的问题。
    • 观看Node.js相关的教程视频和阅读官方文档。

祝你入门顺利,早日成为全栈开发者!

回到顶部