Node.js Application Development
Details
Attendees will learn how to use Node.js to create Command Line Interface applications for system administration and process management, use Node.js networking modules to communicate with TCP/IP clients and servers such as HTTP servers, and create / consume REST (Representational State Transfer) data services. Attendees will learn how to leverage frameworks such as Express to rapidly build Web Applications. Attendees will learn how to use Node.js to connect to NoSQL databases such as MongoDB to store, retrieve, and manipulate data (i.e., achieve data persistence).
Comprehensive hands on exercises are integrated throughout to reinforce learning and develop real competency.
Prerequisites: Knowledge of JavaScript. Attendees should also have familiarity with a Windows, Linux, or OS X command line interface as well as a basic understanding of network protocols such as HTTP.
Outline
- Server Side JavaScript
- The Event Loop
- Asynchronous Execution
- npm
- Node.js Architecture
- Node.js Core Modules
- Node.js Projects and Applications
- Node.js Command Line Arguments
- Timers
- Global Objects
- The process Object
- Buffers and Buffer Manipulation
- Arrow Functions
- let and const Keywords
- Enhanced Object Literals
- Map and Set Collections
- WeakMap and WeakSet Collections
- String Template Literals
- Node.js
- npm
- Express
- MongoDB
- Mongoose
- Using Modules to Organize Code
- Creating and Reusing Code with Modules
- Asynchronous Programming Fundamentals
- Using Callbacks to Handle Events
- Using EventEmitters to Handle Repeating Events
- Type Testing with the util Module
- The Node.js Module Loading System
- Module Caching
- Implementing Unit Tests with the Assert Module
- Test Driven Development with Nodeunit
- Behavioral Testing with Mocha
- Facilitating Debugging with the Console Module
- Working with the Node.js Debug Utility
- Interacting with the System Using the os Module
- Working with the File System Using the fs and path Modules
- Managing Data Flow with Pipes and Streams
- Synchronous vs. Asynchronous File System Interaction
- Using Buffers to Read and Manipulate Binary Data
- Handling and Transforming File Path Information with the path Module
- Spawning and Managing Processes using the process Module
- Data Persistence Mechanisms
- MongoDB Capabilities
- Connecting to MongoDB
- Using the fs Module to Read and Write Files Synchronously and Asynchronously
- Using Express to Rapidly Build and Deploy Web Applications
- REST-Based Web Service Fundamentals
- Creating HTTP Servers and Clients Using the http Module
- Sending HTTP Requests and Receiving HTTP Responses
- Making DNS Requests with the dns Module
- Creating TCP Clients and Servers with the net Module
- Executing External Applications
- Attaching and Detaching Child Processes
- Facilitating Inter-Process Communication between Node.js Processes
- Making Node.js Applications Executable
- Planning Modules
- Working with the package.json File
- Working with Dependencies
- Understanding Semantic Versioning
- Testing Modules
Software Skills Training, Inc. (SST) is a leading provider of task-oriented training courses for IT professionals. Our task-based training philosophy is focused on saving you time and assuring that you are able to work more productively and with higher quality results after training. Founded in 2000, SST has delivered high-powered training to tens of thousands of IT professionals.
Choose from a variety of delivery options:
- Face-to-face in the classroom in over 100 cities
- Live remote attendance
- On-demand streaming
- Group training at your facility
We guarantee the overall quality of our courses with a 100% money-back guarantee. If any student is not totally satisfied for any reason, they can withdraw before the second day of class. Notify the instructor and return all course materials and receive a 100% refund.
Why Choose SST?- 50% hands on labs
- Small class sizes typically under 14 students
- Expert instructors that average over 10 years of teaching experience
- Students can retake any portion of a class that has been completed, within 12 months at no extra cost
- No registration fees or cancellation fees