Nodejs两本书的建议
Nodejs两本书的建议
学习nodejs这几天,看过两本书《nodejs入门》、《nodejs开发指南》,这两本都是入门书,相信一些小伙伴们看过,获正在看 先说说《nodejs入门》,这本书主要的例子就是一个文字和图片的submit功能实现,主要详细说了路由和server,一开始如果没有网站开发经验的小白看起来,可以能些复杂,比如我当时就看的想抓狂。看看慢慢看过之后,把代码实现了就好多了,基本上有个理解 再后看了《nodejs开发指南》这本书上一个说的全面,主要例子是一个小微博,比较好的是,介绍了express框架使用,但是在路由和server一块说的不细致,并且这本书用的框架也不是最新的,网上有一些关于最新框架的利用http://blog.fens.me/nodejs-express3/ 还得注意的是,一些例子用的是ejs,一些用的是jade,看个人掌握了 所以建议,先看第一本,再看第二本书有助于系统学习,个人建议。本人在网上也找到了一个express的API,不知道大家有木有,也拿出来分享一下http://expressjs.jser.us/api.html
Nodejs两本书的建议
学习Node.js这几天,我阅读了两本书:《Node.js入门》和《Node.js开发指南》。这两本书都是入门级别的书籍,我相信很多小伙伴也在读或者已经读过。现在我想分享一下我对这两本书的看法和建议。
《Node.js入门》
《Node.js入门》这本书通过一个简单的例子来讲解Node.js的基础知识,即一个包含文字和图片提交功能的表单实现。这本书详细地介绍了路由(routing)和服务器(server)的概念,这对于初学者来说是非常重要的。不过,如果没有任何网站开发经验的小白读者可能会觉得有些复杂。例如,我在刚开始阅读时感到非常困惑,但随着自己逐步将代码实现,理解起来就容易多了。
示例代码:
const http = require('http');
const url = require('url');
const server = http.createServer((req, res) => {
const parsedUrl = url.parse(req.url, true);
const path = parsedUrl.pathname;
const method = req.method;
if (path === '/submit' && method === 'POST') {
let body = '';
req.on('data', chunk => {
body += chunk.toString();
});
req.on('end', () => {
res.writeHead(200, { 'Content-Type': 'text/plain' });
res.end(`Received data: ${body}`);
});
} else {
res.writeHead(404, { 'Content-Type': 'text/plain' });
res.end('Not Found');
}
});
server.listen(3000, () => {
console.log('Server is running on port 3000');
});
这段代码展示了一个基本的HTTP服务器,能够处理POST请求并将接收到的数据返回给客户端。通过这种方式,读者可以更好地理解路由和服务器的工作原理。
《Node.js开发指南》
《Node.js开发指南》这本书则更加全面,主要通过一个小微博项目来展示Node.js的应用。书中不仅介绍了Express框架的使用,还涵盖了其他一些高级概念。不过,这本书在路由和服务器部分的讲解不如《Node.js入门》那么详尽,并且使用的Express版本不是最新的。此外,书中的一些例子使用了EJS模板引擎,而另一些则使用了Jade(现已更名为Pug)。因此,选择这本书之前最好确认一下自己的偏好。
示例代码:
const express = require('express');
const app = express();
app.set('view engine', 'pug');
app.get('/', (req, res) => {
const tweets = [
{ id: 1, content: 'Hello World!' },
{ id: 2, content: 'Learning Node.js' }
];
res.render('index', { tweets });
});
app.listen(3000, () => {
console.log('Server is running on port 3000');
});
这段代码展示了如何使用Express框架来渲染一个包含微博列表的页面。通过这种方式,读者可以更深入地了解如何构建实际应用。
综合建议
总体来说,我的建议是先阅读《Node.js入门》,然后再阅读《Node.js开发指南》。前者可以帮助你打下坚实的基础,后者则可以让你进一步提升并掌握更多高级特性。此外,我还发现了一个非常有用的Express API文档链接,方便大家查阅:Express API。
希望这些分享对你有所帮助!
开发指南有点小缺憾,express升级之后,书里的实例就不太适用了
确实,当初为此在抓狂,所以准备看《深入浅出nodejs》
难道没有上来就看node.js高级编程的么=-=
感觉没啥入门难度,就是坑有点多
我是个小白,所以看点基本的,还得请大神指教 =,=
话说,确实坑多,书上和网上的一些资料都是老版本的东西,有时候不管用。
对于学习Node.js的两本书《Node.js入门》和《Node.js开发指南》,我建议如下:
1. 《Node.js入门》
这本书适合初学者,通过简单的例子(如文字和图片提交功能)帮助读者理解Node.js的基本概念,如路由和服务器构建。
示例代码
// 引入http模块
const http = require('http');
// 创建服务器
const server = http.createServer((req, res) => {
if (req.url === '/submit') {
// 处理提交请求
let body = [];
req.on('data', chunk => {
body.push(chunk);
}).on('end', () => {
body = Buffer.concat(body).toString();
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end(`Received data: ${body}`);
});
} else {
res.writeHead(200, {'Content-Type': 'text/html'});
res.end('<h1>Welcome to the Node.js App</h1>');
}
});
// 监听端口
server.listen(3000, () => {
console.log('Server is running on port 3000');
});
2. 《Node.js开发指南》
这本书覆盖面更广,包括了Express框架的使用。虽然书中的例子可能略显陈旧,但仍然是理解Express框架的好材料。建议搭配最新版本的文档一起阅读。
示例代码
// 安装Express
const express = require('express');
const app = express();
// 使用ejs模板引擎
app.set('view engine', 'ejs');
// 首页路由
app.get('/', (req, res) => {
res.render('index', { title: 'Home' });
});
// 启动服务器
app.listen(3000, () => {
console.log('Server is running on port 3000');
});
总结
建议:先从《Node.js入门》开始,了解基础概念和基本操作;然后过渡到《Node.js开发指南》,进一步掌握高级特性和框架使用。在实际项目中不断实践,查阅最新的文档和教程,以跟上技术的发展。