Corporate Trainer & Software Consultant , INDIA

MERN STACK STANDARD COURSE CONTENTS

(DURATION 19 DAYS)

 

 

Prerequisite - Participants must have a good understanding of Database, HTML, JS,
                        Jquery & Bootstrap.

Course Objectives -This course will offer a deep dive into Web Application Development & Mobile-Based Application Development. Also, the participants will have full exposure of RESTFUL Services or REST API.  Will understand the complete CRUD operation using the MEAN Stack.

Lab Setup Details :
Hardware requirement: 

CPU :   I4/I5 , Hard Disk : 50GB , RAM :8 GB
 

Software Requirement:

   - XAMPP  https://www.apachefriends.org/download.html  (DOWNLOAD VERSION
   5.6.31)
   - MSOFFICE 2010
   - NOTEPAD++  https://notepad-plus-plus.org/download/v7.5.1.html (DOWNLOAD
   VER 7.5.1)
   - SUBLIME TEXT3 https://www.sublimetext.com/3
   - Visual Studio Code https://code.visualstudio.com/download
   - PDF READER https://adobe-reader.en.softonic.com/download
   - Browser Google Chrome  OS Window 10

 

MongoDB (5 days)

 

Overview - SQL/NoSQL

  • Datastore design considerations
  • Relational v/s NoSQL stores
  • Entities, Relationships and Database modelling
  • When to use Relational/NoSQL
  • Relational Storage Structures
  • Categories of NoSQL stores
  • Examples of NoSQL stores
  • NoSQL Storage Structures

 

Data Formats

  • What are Data Formats
  • Difference between Data Formats and Data Structures
  • Serializing and de-serializing data
  • JavaScript Fundamentals
  • The JSON Data Format
  • BSON Data Format
  • Advantages of BSON

 

Introduction to MongoDB

  • Key Features of MongoDB
  • Installing MongoDB
  • Starting and Stopping the server
  • Important file system locations
  • Using the shell
  • Integrating with other languages

 

MongoDB Concepts

  • Servers
  • Connections
  • Databases
  • Collections
  • Documents
  • Fields
  • Indexes

 

MongoDB CRUD

  • A look at a few use cases
  • Insert (C)
  • Simple Query Examples (R)
  • Update (U)
  • Remove (D)
 

Indexing

  • Capped Collections
  • Setting up Profiling
  • Indexing concepts
  • Types of Indexes
  • Indexes covering queries

 

Querying MongoDB

  • Query Expression Objects
  • Query Options
  • Cursors
  • Mongo Query Language
  • Dot Notation
  • Full Text Search
  • Cursors
  • Adding Custom JavaScript

 

Advanced querying

  • Joins
  • Server-side v/s Client-side querying
  • Retrieving a subset of fields
  • Conditional operators
  • Aggregation
  • Grouping
  • Projections

 

Replication

  • Why Replication?
  • Difference between replication and backup
  • Replication Setups
  • Master/Slave Replication
  • Replica sets
  • Setting up an Arbiter
  • Failover
  • Using data for replication analysis
  • Oplogs
  • Heartbeats
  • Removing replica set members
  • Overriding the default sync target
  • Write concerns Dummy Project
 

ReactJS (5 days)

 

Introduction

  • Functions as first-class objects
  • ES6 Concepts
  • Pure functions
  • Webpack

 

Setting up the Dev environment

  • Webpack
  • Webpack HMR
  • React Developer Tools Chrome Extension

 

Introduction to React

  • Evolution of client-side MVC and component-based architectures
  • Hello World
  • Introduction to JSX
  • Component based architecture
  • Composing Components
  • Props and States
  • Component life cycle
  • Lists and keys
  • Handling events
  • Forms

 

Getting into depth

  • Type checking with prop types
  • Controlled components
  • Parent to child and child to parent communication
  • State management challenges, Observer pattern and Event Emitters
  • Communication across the component hierarchy
  • refs and context
  • React Hooks
  • Context APIs
  • Error Boundaries
  • Optimizing Performance in React
  • Code Splitting
  • Suspense

 

Patterns

  • Mixin pattern
  • Container and Presentation Components
  • Higher Order Components
  • Composition vs Inheritance and comparison of paradigms
  • Anti-patterns

 

Integrating 3rd party components

  • React-select case study
  • React data grid React Router
  • Introduction to Routing and History APIs
  • Introduction to React Router
  • URL parameters
  • Redirects
  • Link component
  • history manipulation

 

State management

  • Need for state management
  • Redux (without React)
  • React with Redux
  • Mobx
  • Comparison of different state management solutions

 

React Testing

  • React Test Utilities
  • Shallow rendering
  • Jest
  • Enzyme
  • Mocha

 

NODEJS (5 days)

 

JS in the Server

  • A short history of Javascript
  • Javascript in the server
  • Difference between JS as a programming language and JS in the browser

 

Installation

  • Node.js as a Javascript shell
  • Node.js Hello World
  • Reading command line arguments
  • Working with Console APIs

 

Sync v/s Async

  • Synchronous programming
  • Asynchronous programming
  • Event driven, single-threaded server
  • Multi-threaded server
  • Async gotchas (or things to remember when using Node)
  • Cluster APIs
  • Async module

 

File System APIs

  • Reading files
  • Writing files
  • Synchronous v/s Asynchronous operations
  • Working with directories
  • Buffers

 

Modules

  • Built-in modules
  • Writing your own modules
  • Installing 3rd party modules using npm
  • Forever
  • ExpressJS
  • SocketIO

 

Misc (skim)

  • Debugging Node.js apps
  • Timers
  • Deploying Node.js apps
  • Exception Handling
  • Logging Dummy Project

 

Express JS (4 days)

 

Getting Started

  • Installation
  • What is Express?

 

Routing and URL Building

  • Basic routing in an Express application
  • HTTP method
  • Using dynamic routes

 

Middleware

  • What is “Middleware”?
  • Learn to write a simple middleware function

 

Templating

  • Understanding Templating
  • Installing templating engine for Express
  • Using template engines with Expres
  • Using Pug – a case study

 

Database Integration in Express

  • Learn to connect databases to Express apps
  • Connecting to MongoDB – a case study

 

RESTful APIs

  • REST principles
  • RESTful URIs and methods
  • Creating API in Express

 

Scaffolding

  • What is Scaffolding?
  • Scaffolding tools for Express

 

Error handling and Debugging

  • Error handling in Express using middleware
  • Functions for error handling
  • Express Debug module

 

LIVE PROJECT BASED ON MEAN STACK WITH DEVOPS

 Download Course Content || Request For the Training || My KeySkills || Contact Me