What you'll learn
- Learn to build apps with NodeJS Express, MongoDB
- Create command-line apps
- How to install and setup NodeJS
- How to Connect to a MongoDB with Node
- How to Create a MongoDB
- Web development experience
- Prior Coding experience
- Access to a computer with Admin permissions
- Use of a code editor
Top Reasons for using Node.JS
- In Demand Skillset - used by popular and large businesses
- Perfect solution for a full stack developer dealing with backend and databases
- Easily to develop locally
- Open Source with an active community and support
- Node Package Manager can allow you to create complex applications using existing modules, NPM has a massive number of packages.
- Node is well supported, large size community and many forms and groups to share code and get help
- Can be used to build micro services
Final Project in Section #6
Creating a fully functional node application, that uses Express to run a web application. Connect to a MongoDB and using Node allow the frontend web application to access the Database items, full CRUD interaction.
- Create a web application using Express - output html file from public folder
- Setup a MongoDB in the cloud prep to connect using NodeJS
- Create and test insert into the database
- Setup Frontend web application
- Add DOM event listeners to trigger requests
- Generate visual response as HTML from the Node response object
- Update and create interactive list of database content CRUD
- Add HTML updates to send requests to database.
#1 Introduction to Installing and Setup of Node
Node is a lightweight framework developed on Chrome’s V8 engine that can be used for largeScale application development. It's scalable because the server can respond in a non-blocking way.
Process object which is a global that provides information, and control over, the current Node.js process. Because its global it is always available to Node.js applications without using require()
npm registry contains packages, many of which are also Node modules, or contain Node module
- Demo how to setup your development environment setting up Editor
- Visual Studio Code as an Editor with ready terminal
- Creating your first Node File and running the code
- How Node Works and examples of simple node syntax
- Where you can find out more about Node with more examples.
- How to debug and output content into the terminal various command line and console outputs
- NodeJS programming language environment REPL Read Evaluate Print Loop
- Examples of Node
- Process Object - with examples
- What Node Packages and NPM
- Variables and the Data Types. How to declare variables and examples of different Data Types.
- Adding Comments to code
- How to create Objects and Array
- Use of conditions for logic, turthy and falsey. How to use the Ternary Operator.
- Examples of logic switch statement, and condition statement
- Use of Objects and objects with methods.
- Array and Object Values, iterating through the contents of each.
- Use of Template literals to set string values
- Global object in Node with the use of timeout
- How to Construct promises and Resolve and Reject Promises
Asynchrony, in computer programming, refers to the occurrence of events independent of the main program flow and ways to deal with such events. How to add callbacks that run once a stack is complete.
Covering Input Output which accesses anything outside the application. Once the application is started it will be loaded into the machine memory.
Coding Examples, and practice code outputting into the console when ready
Event Driven programming which makes Node.js fairly fast compared to other similar technologies. Once the application starts it initiates its variables, declares its functions and then waits for the event to occur.
The two types of API functions in Node.js, Asynchronous, non-blocking functions and Synchronous, blocking functions.
The differences difference between blocking and non-blocking calls in Node.js.
Node keeps an event loop, which monitors when a task gets completed, which would then fire the corresponding events. Node.js overcomes the problem of blocking of I/O operations by using the event loop instead of threads.
Recursive functions, Function that calls itself is called a recursive function - must have a condition to break the loop.
The EventEmitter module makes possible the communication and interaction between objects in Node. EventEmitter provides properties like on and emit. The on property is used to bind a function with the event and emit property is used to fire an event.
- How a callback works, Callback added to the background will run once stack is complete
- Use of setTimeout and how it works in the queue.
- Callback example Create a function that returns the results from another function
- Event Loop with an Example of a Recursive Function
- The three states of promises
- How to create promises and more promises examples
- Node process object
- Node Event EventEmitter
- How to setup events and trigger emit of events
#4 Node Modules
Each module in NodeJS has its own context and cannot interfere with other modules. Modules are like libraries that you can include into your application. Node.js has a set of built-in modules which you can use without any further installation like http, fs, path, and url.
You can create your own modules, and easily include them in your applications. Save them locally and use within your node application as needed. Perfect to separate functionality for your application. To make properties and methods available outside the module file use the keyword exports.
NPM hosts thousands of third party modules, free packages to download and use. A package in Node.js contains all the files you need for a module.
Debugging - The try...catch statement marks a block of statements to try and specifies a response should an exception be thrown.
- How you can create your own module locally
- Commonly used builtin modules like http, fs, path and url
- Using FS module to update file contents, delete files, create new files
- Getting file information including file size with fs.stat()
- Use of node package manager NPM explore some popular node packages.
- Use of package.json - adding and removing packages
- Node Package Manager Module lodash
- Node Buffers how to copy and slice buffer contents
- Debugging node use of Throw, try and catch
#5 Node Web Application with Express
Express is a minimal and flexible Node.js web application framework that provides a robust set of features for web and mobile applications. Explore how to setup a web application quickly with Express.
The arguments which are available to an Express JS route handler function are request (request Object), response (response Object) and optional Next which can pass control to one of the subsequent route handlers.
- How to setup express and output html into a localhost webpage
- How to Serve files from a static directory using Express
- Values that can be used in route filtering, pattern match and reg exp
- Route parameters with req.params
- Express Route with full CRUD Create Read Update Delete Methods
- Returning JSON response
- Use of bodyparser
- Sending data from a frontend form to node express to output into the terminal
- Returning a JSON response to the frontend from a frontend request
#6 MongoDB with Frontend web page interaction using Node and Express
The official MongoDB Node.js driver allows Node. js applications to connect to MongoDB and work with data. The driver features an asynchronous API which allows you to access method return values through Promises or specify callbacks to access them when communicating with MongoDB.
- How to setup a cloud base mongo Database to use in practice development
- Connecting to a mongoDB
- Use of mongoDB client in Node
- Checking a connection to the database
- How to connect to a MongoDB and select the collections, create collections
- How to output database collections to the frontend using Express and Node.
Creating a fully functional node application that uses Express to run a web application. Connect to a MongoDB and using Node allow the frontend web application to access the Database items, full CRUD interaction.
Who this course is for:
- Anyone who wants to learn more about NodeJS
- Web Developers
I'm here to help you learn, achieve your dreams, come join me on this amazing adventure today
Google Developers Expert - GSuite
Providing Web development courses and digital marketing strategy courses since 2002.
Innovative technology expert with a wide range of real world experience. Providing Smart digital solutions online for both small and enterprise level businesses.
"I have a passion for anything digital technology related, enjoy programming and the challenge of developing successful digital experiences. As an experienced developer, I created my first computer applications in 1990, and my first website in 1998. I enjoy sharing my knowledge with others and want to help you share in the wonderful opportunities that the internet provides."
"Learning, understanding with a strong passion for education. The internet has provided us with new opportunities to expand and share knowledge."
Want to learn more about becoming a web developer, do you want to experience the freedom that technology provides for us? Learn how to bring amazing things to life online. Technology connects us all in many ways. It opens up doors to those who embrace it and learn how to make those connections real.
"My courses are designed to help you achieve your goals, learn and update skills"
"Understanding technology provides a means to better connect with users. It also opens so many doors. Knowledge is the key to success and I want to help you experience what technology has to offer. I'm passionate about web technologies, and look forward to sharing my knowledge and experience with you!"
StartWhat is Node Setup Dev Environment (11:28)
StartVisual Studio Code Terminal (5:17)
StartCreate a Node file and Run it (4:20)
StartWhat is Node and how it Works (9:58)
StartNode JS resources (10:21)
StartWorking with Node JS (6:03)
StartNode JS REPL (5:02)
StartCommon Node Examples (15:33)
StartNode Process Object (9:22)
StartUse Node Packages NodeMon (7:41)
StartCommand Line and Console (9:27)
StartVariables and Comments (10:51)
StartArray Objects Data Types (6:07)
StartModern Function Examples (9:04)
StartConditions Truthy and Falsey (9:56)
StartTernary Operator (8:34)
StartArray Methods - Update Array (3:21)
StartArray Iteration and Object Values (9:50)