Course Outline
Introduction to Node.js
- Comparing RAM access with I/O latency
- Blocking and non-blocking operations
- Event-driven programming principles
- The event loop mechanism
- Preventing event loop blockage
- Core Node.js design philosophy
Node.js Environment Configuration
- Acquiring and installing the runtime
- Utilizing the Node REPL
- Executing a basic introductory program
Modules and npm
- Structural components of a module
- Encapsulating private code
- Importing and utilizing modules
- Executing npm commands
- Defining package.json configurations
Callback Patterns
- Definition and application of callbacks
- Placing callbacks as the final argument
- Implementing error-first conventions
Event Management
- Criteria for utilizing Event Emitters
- Associating functions with specific events
- Initiating event requests
- Monitoring event emissions
Error Management
- Callback patterns prioritizing errors
- Managing errors within Event Emitters
- Handling uncaught exceptions
- Leveraging Domains for isolation
Buffers
- Purpose and necessity of Buffers
- Generating Buffer instances
- Reading from and writing to Buffers
- Modifying Buffer data structures
Streams
- Definition and function of streams
- Read and Write Stream interfaces
- Implementing flow control mechanisms
- Utilizing pipe operations
- Duplex Stream configurations
- Transform Stream applications
Express.js
- Overview and installation of Express.js
- Developing a basic Express application
- Defining application routes
- Rendering page layouts
- Implementing template engines
- Incorporating partials
- Utilizing local variables and conditional logic in templates
- Structuring routes into modular components
Socket.io
- Listening for client events
- Broadcasting messages to clients
- Responding to client inquiries
Database Integration
- Non-SQL and document store systems
- Relational database systems
- System configuration and environment setup
- Performing Create, Read, Update, and Delete operations
Requirements
Participants enrolled in this course are expected to possess prior experience in JavaScript programming.
Testimonials (7)
I enjoyed the interesting topics and touching on the various nuances of javascript/typescript/nodejs/
John - BMW SA
Course - Node.js for JavaScript Developers
The platform
Shaun Mbhiza - BMW SA
Course - Node.js for JavaScript Developers
Hands on exercises
Daniel - BMW SA
Course - Node.js for JavaScript Developers
I was not aware that is would be so interactive and code heavy, which I loved and thought it made the learning more fun and effective.
Ryan - BMW SA
Course - Node.js for JavaScript Developers
His Humour & Personailty
Karabo Mphahlele - BMW SA
Course - Node.js for JavaScript Developers
The practical examples
Werner - BMW SA
Course - Node.js for JavaScript Developers
I was benefit from doing the exercises to understand nodejs concepts.