O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Learning Node.js

Video Description

Learning Node.js LiveLessons provides developers with a practical introduction to Node.js, an exciting new platform for developing web and network applications.

Marc Wandschneider, Senior Developer Advocate at Google, has more than 20 years of experience as a developer and is the author of two programming books and one other LiveLessons video training. In this video training, Marc starts by introducing Node.js, installing, and running it. He then gives a quick refresher course on the JavaScript language and its new features. The video then moves into writing JSON servers, web applications, client-side templates, and continues by covering database access to both SQL and NoSQL database servers. After watching this video, developers will begin to understand why Node.js inspires so much passion, and they will be able to write fast, compact, and reliable applications and web server.

About the Author:

Marc Wandschneider is a developer with over 20 years of industry experience. He has worked at Microsoft, where he developed and managed developers on the Visual Basic, Visual J++, and .NET Windows Forms teams, and co-founded a mobile development startup in Beijing specialising in iOS and Android apps. A graduate of the McGill University School of Computer Science, he travels the globe looking for interesting projects, and will next move to London, England, to become a Developer Advocate for Google, Inc. He is the author of Core Web Application Development with PHP and MySQL (Prentice Hall; 2005), PHP and MySQL LiveLessons (Prentice Hall 2008), and Learning Node.js (Addison Wesley, 2013).

Table of Contents

  1. Introduction
    1. Introduction to Learning Node.js LiveLessons 00:09:04
  2. Lesson 1: Getting Started
    1. Learning objectives 00:01:15
    2. 1.1 Install Node.js on Windows 00:07:56
    3. 1.2 Install Node.js on the Mac 00:14:23
    4. 1.3 Install Node.js on Linux 00:08:08
    5. 1.4 Write “Hello World!” in Node.js 00:05:15
    6. 1.5 Run your first web server 00:04:50
    7. 1.6 Use the Node.js debugger 00:05:58
    8. 1.7 Stay up to date and find the help you need 00:03:28
  3. Lesson 2: A Closer Look at JavaScript
    1. Learning objectives 00:01:48
    2. 2.1 Use basic types 00:09:03
    3. 2.2 Use strings 00:08:45
    4. 2.3 Use objects 00:05:19
    5. 2.4 Use arrays 00:10:42
    6. 2.5 Make full use of functions 00:10:38
    7. 2.6 Use language constructs 00:05:16
    8. 2.7 Write classes with prototypes and inheritance 00:11:05
    9. 2.8 Use and handle errors 00:01:56
    10. 2.9 Work with two important Node.js globals 00:02:36
  4. Lesson 3: Asynchronous Programming
    1. Learning objectives 00:01:34
    2. 3.1 Compare synchronous and asynchronous programming 00:12:13
    3. 3.2 Mix error handling and asynchronous programming 00:05:23
    4. 3.3 Solve a new problem that arises in Node.js — losing your “this” reference 00:06:33
    5. 3.4 Yield control and improve responsiveness 00:10:11
    6. 3.5 Take a quick look at synchronous programming in Node.js 00:02:48
  5. Lesson 4: Writing Applications
    1. Learning objectives 00:01:19
    2. 4.1 Write your first JSON server 00:10:37
    3. 4.2 Combine loops and asynchronous programming 00:07:29
    4. 4.3 Support multiple request types in your server 00:07:13
    5. 4.4 Explore requests and responses 00:04:52
    6. 4.5 Add support for query (GET) parameters 00:08:12
    7. 4.6 Receive POST data 00:10:21
  6. Lesson 5: Modules
    1. Learning objectives 00:01:05
    2. 5.1 Write a simple module 00:11:07
    3. 5.2 Use npm — the node package manager 00:09:58
    4. 5.3 Write a more interesting module 00:09:59
    5. 5.4 Publish modules 00:03:28
    6. 5.5 Explore the async module, a vital component of our apps 00:24:15
  7. Lesson 6: Expanding our Web Server
    1. Learning objectives 00:01:54
    2. 6.1 Investigate Node.js streams 00:10:08
    3. 6.2 Serve static files from our server 00:07:29
    4. 6.3 Serve different file types with our server 00:05:54
    5. 6.4 Use HTML templates — the basics 00:13:54
    6. 6.5 Use HTML templates — the Mustache framework 00:10:46
    7. 6.6 Use HTML templates — bootstrapping the process with JavaScript 00:09:09
    8. 6.7 Use HTML templates — final assembly for the browser 00:03:28
  8. Lesson 7: Building Web Applications Easier with Express
    1. Learning objectives 00:01:20
    2. 7.1 Install express and write Hello World 00:04:41
    3. 7.2 Route requests 00:04:49
    4. 7.3 Update your app for routing 00:08:41
    5. 7.4 Understand REST API design 00:07:18
    6. 7.5 Factorize your code with modules 00:11:44
    7. 7.6 Explore Connect middleware 00:07:23
    8. 7.7 Clarify the importance of ordering in middleware 00:04:56
    9. 7.8 Replace static file handling in the app with middleware 00:07:26
    10. 7.9 Support POST data, cookies, and sessions 00:09:22
    11. 7.10 Upload files 00:03:19
    12. 7.11 Implement HTTP basic authentication 00:06:07
  9. Lesson 8: Databases I - Mongo DB and Node.js
    1. Learning objectives 00:01:40
    2. 8.1 Set up and run MongoDB 00:04:04
    3. 8.2 Perform basic Mongo DB operations 00:22:42
    4. 8.3 Query collections with the “find” method 00:13:10
    5. 8.4 Update your photo app — setting everything up 00:10:25
    6. 8.5 Add new database operations to the app 00:06:53
    7. 8.6 Add new pages and templates to the app 00:07:39
  10. Lesson 9: Databases II - MySQL
    1. Learning objectives 00:01:28
    2. 9.1 Prepare MySQL 00:04:13
    3. 9.2 Create a SQL schema for our project 00:02:16
    4. 9.3 Learn about core database operations in MySQL 00:14:59
    5. 9.4 Add authentication to our app — API 00:09:49
    6. 9.5 Add authentication to our app — pages and templates 00:05:33
    7. 9.6 Use resource pooling 00:04:26
    8. 9.7 Secure your API with HTTP basic authentication 00:05:16
  11. Lesson 10: Development and Deployment
    1. Learning objectives 00:01:10
    2. 10.1 Deploy Node apps: Basic 00:09:32
    3. 10.2 Deploy Node apps: Ninja (Unix-like) 00:09:23
    4. 10.3 Deploy Node apps: Ninja (Windows) 00:05:38
    5. 10.4 Fully take advantage of multi-processor servers on deployment 00:11:52
    6. 10.5 Support sessions on multiple servers with memcached 00:10:24
    7. 10.6 Implement virtual hosting — Express 00:07:20
    8. 10.7 Implement virtual hosting — Proxy servers 00:04:27
    9. 10.8 Secure your projects with HTTPS — Express 00:07:09
    10. 10.9 Secure your projects with HTTPS — proxy servers 00:04:55
    11. 10.10 Develop for multiple platforms 00:05:41
  12. Lesson 11: Command-Line Programming
    1. Learning objectives 00:01:05
    2. 11.1 Run command-line scripts (Unix-like) 00:05:05
    3. 11.2 Run command-line scripts (Windows) 00:05:52
    4. 11.3 Use synchronous file APIs 00:05:18
    5. 11.4 Understand the basics of stdin/stdout 00:10:12
    6. 11.5 Launch processes with the “exec” function 00:03:47
    7. 11.6 Launch processes with the “spawn” function 00:06:46
  13. Lesson 12: Testing
    1. Learning objectives 00:01:05
    2. 12.1 Explore some testing framework options and install nodeunit 00:03:00
    3. 12.2 Write your first nodeunit tests 00:05:44
    4. 12.3 Handle asynchronous programming in your tests 00:02:06
    5. 12.4 Test RESTful APIs 00:07:12
  14. Summary
    1. Summary of Learning Node.js LiveLessons 00:02:39