|Price||300 Euro (20% discount for bachelor students)|
|Application deadline||June 29|
Backend development is essential in any kind of application whether that is a mobile app, a web app, or a desktop app, because everything needs to have a backend for maintaining so many things under the hood.
NodeJS plays a significant role in the technology stack. It is one of the most popular choices for backend development. Express JS is a prebuilt NodeJS framework that helps in creating server-side web applications faster and smarter. It entails characteristics such as simplicity, minimalism, flexibility, scalability and since it is made in NodeJS itself, it inherits its performance as well.
NodeJS continually fetches data from the backend server. All of this data needs to be stored in a database. Even though NodeJS works well with the MySQL database, the perfect combination is a NoSQL like MongoDB wherein the schema need not be well-structured. MongoDB represents the data as a collection of documents rather than tables related by foreign keys. This makes it possible for the varied types of data dealt over the internet to be stored decently and accessed in the web applications using Node.js.
This course goes in depth into the fundamentals of Node and then progresses to other tools, frameworks, and techniques for advanced backend development.
This course is aimed at individuals that are seeking to improve their backend programming skills with Node. The typical candidate is passionate about technology and programming and is willing to explore new subjects.
Upon course completion, students will be able to:
● Thoroughly understand Node JS
● Use Git to version the codebase and use it as a team collaboration tool
● Write CLI applications
● Understand HTTP
● Use Express and MongoDB to create powerful RESTful applications
● Use Postman to debug HTTP requests
● Test applications to enforce quality
● Deploy applications
a. Course Outline
b. Introduction to Node Js
c. Why Use Node Js?
2.Setting Up the Development Environment
a. Installing Node Js and NPM
b. Installing and Setting Up Visual Studio Code
c. Writing Your First Hello World
a. What Are Node Modules?
b. Exploring and Importing Node Core Modules
c. Importing Own Modules and Files
d. What Is the NPM?
e. Exploring and Importing NPM Modules
f. Global NPM Modules
a. Introduction to Git
b. Initialising a Git Project
c. Git Commands
d. Techniques For Team Collaboration
a. What Is the Command Line Interface and Why Use It?
b. Introduction to the File System
c. Getting Familiar With the CLI
d. Parsing User Input and Arguments
e. Introduction to JSON
f. Creating Your First CLI App
g. CRUD Operations Via the CLI
6.Errors and Debugging
a. Error Handling
b. Understanding Error Messages
7. Node Js Core Concepts
a. The V8 Engine
b. Blocking and Non-Blocking Calls
c. The Event Loop
d. The Call Stack and Callback Queue
e. Understanding Asynchronous Calls
a. Introduction to HTTP
b. HTTP Methods
c. Your First HTTP Request
d. Attaching Information to HTTP Requests
e. Understanding Asynchronous Calls and Callbacks
f. Callback Chaining
a.Introduction to Express
b. What Are Web Servers and How Do They Work?
c. Installing Nodemon
d. Serving Static Files
f. Understanding Template Engines
g. Setting Up Handlebars
h. Error Pages
i. Styling The Application
a. Introduction to REST APIs
b. Accessing REST APIs In The Browser
c. Installing and Exploring Postman
d. Creating Your First HTTP Endpoint
e. Understanding Ajax
f. Consuming HTTP Endpoints
a. Introduction to Databases
b. Difference Between SQL and NoSQL
c. Installing MongoDB
d. Connecting to MongoDB Via the CLI
e. Documents and Collections
f. CRUD Operations With MongoDB
g. The Object Id
h. MongoDB Queries
12. Creating a REST Application
i. Setting Up
ii. Creating Models
iv. Data Sanitization
b. REST API
i. Planning Your API
ii. Creating Resources
v. Deleting Resources and Soft Deletes
i. Understanding Promises
ii. Then, Catch, Finally
iii. Promise Chaining
v. Try, Catch, Finally
d. Security and Authentication
i. Password Hashing
ii. JSON Web tokens
iii. Authentication With JWT
iv. Creating Middlewares
v. Attaching Authentication tokens to HTTP Requests
vi. Debugging Requests With Postman
vii. Authorizing Endpoints
e. Data Filtering
f. Uploading Files
i. Creating Endpoints
ii. Validating Files
iii. Serving Uploaded Files
a. Why Do You Need to Test Your Application?
b. Understanding Unit Tests
c. Setting Up Jest
e. Running Tests
f. Asynchronous Testing
14.Deploying Your Application
• 70 Hours
• 3 days* / 9 hours per week* / 8 weeks*
Every Tuesday - Thursday and Saturday from 16:30 - 19:30
This course will start on June 29, 2021
Training room fifth floor.
• Course attendance – 80%.
• Final Project/Exam – 20%.
Entor Arifi is a software engineer and tech enthusiast experienced in working with different languages and technologies. Entor has a passion for programming, algorithms, microservices and containerization. He is also very resourceful working with UNIX, databases and networking. Entor has been working on projects for international clients and specializes in API design and Full Stack development.
© ICK — Innovation Centre Kosovo