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, 2/e

Video Description

Learning Node.js, Second Edition

A clear, practical introduction to the important new web development technology for creating web server applications in JavaScript

Description

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

Marc Wandschneider 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. 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.

What's New

The second edition updates coverage of Node.js to reflect changes in the technology and how it is used in the three years since the first edition was published:

  • Explanation of Node's new versioning scheme
  • Updated coverage of Streams
  • New coverage of installation using pre-build installers rather than from source code
  • New coverage of Mongoose in the section on MongoDB
  • New information about deploying Node on Heroku and Azure
  • Expansion of coverage on testing

About the Instructor

Marc Wandschneider has worked extensively with open source and web development platforms. He travels the globe, consulting as a lead manager for software projects and teams. He is the author of the book Learning Node.js (Addison-Wesley) and the video courses Learning AngularJS and Learning Node.js LiveLessons. A graduate of the McGill University School of Computer Science, he spent five years working for Microsoft, where he developed and managed developers on the Visual Basic, Visual J++, and .NET Windows Forms teams.

Skill Level
  • Beginner
  • Intermediate
What You Will Learn:
  • Why Node is really exciting
  • How Node is hugely innovative and new
  • How not to be afraid of JavaScript and indeed how to embrace it
  • How to write fast, compact, and reliable application and web servers
  • How to stay up to date with the latest in web application design and techniques
Who Should Take This Course
  • Web developers and instructors who want to quickly get up to speed with the fundamentals of Node.js
Course Requirements
  • Basic understanding of JavaScript and web development

About LiveLessons

LiveLessons Video Training series publishes hundreds of hands-on, expert-led video tutorials covering a wide selection of technology topics designed to teach you the skills you need to succeed. This professional and personal technology video series features world-leading author instructors published by your trusted technology brands: Addison-Wesley, Cisco Press, IBM Press, Pearson IT Certification, Prentice Hall, Sams, and Que. Topics include: IT Certification, Programming, Web Development, Mobile Development, Home and Office Technologies, Business and Management, and more. View all LiveLessons on InformIT at http://www.informit.com/imprint/series_detail.aspx?ser=2185116

Table of Contents

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