EdYoda FullStack MERN Curriculum
EdYoda FullStack MERN Curriculum
Program Curriculum
(MERN Stack)
www.edyoda.com [email protected]
Learning outcomes:
HTML
1. Introduction to WEB
• What is Web?
2. HTML Basics
• Introduction
• Editors
• HTML Document Structure(DOM)
• Elements(Tags)
• Attributes
• Headings
• Paragraphs
• Formatting
• Media
• Lists
• Tables
• iframes
• Layout
• Head
• Meta
• Links
• Scripts
• CSS
• JavaScript
• HTML XHTML
• HTML4 Drawbacks
3. HTML5 Introduction
• What is HTML5 ?
www.edyoda.com [email protected]
• New Features and groups
• Backward Compatibility
• Why HTML5?
• Power of HTML5
4. HTML5 Detailed:
• HTML5 Mark - up
• New Semantic/Structural Elements
• Canvas
• SVG
• APIs
• Inputs
• Forms
5. HTML5 Mark-up:
• New & Updated Elements
• Structural Elements
• New Attributes
www.edyoda.com [email protected]
7. HTML5 Forms:
• Form Elements
• Input Types
• Input and Form Attributes
• Form validation
www.edyoda.com [email protected]
• pattern (regexp)
• placeholder
• required, step
www.edyoda.com [email protected]
• HTML5 App Cache
• What is Application Cache?
• Cache Manifest Basics
• HTML5 Cache Manifest
CSS
2. CSS3
• Introduction
• CSS3 Modules
• Selectors
• Box Model
• Text Effects
• 2D/3D Transformations
• Perspectives
• Animations
• Flex Box
• CSS Grid
• User Interface
• Borders
• border-radius
• box-shadow
• border-image
• CSS3 Backgrounds
4. CSS3 Fonts
• @font-face Rule
www.edyoda.com [email protected]
• Font Properties: Font Size, Font Weight, Font Stretch
5. CSS3 Transforms
• Browser Support
• 2D Transforms : translate, rotate, scale, skew, matrix
• 3D Transforms : rotateX, rotateY(), rotateZ(), scaleX(), scaleY(), scaleZ()
6. CSS3 Transitions
• transition-property
7. CSS3 Animations
• CSS3 @keyframes Rule
• Browser Support
• Animation Attributes: duration, fill, delay, etc
www.edyoda.com [email protected]
Javascript
www.edyoda.com [email protected]
• Closure
• Higher Order Functions
7. OOPS basics
• The “class” Keyword
• Polymorphism
• Inheritance
• Symbols
• Getter and Setters
10. Events
• Event Handlers
• The “event” Object
• Default Actions
• Key Events
• Pointer Events
• Touch Events
• Scroll Events
• Focus Events
• Load Events
• Timers
www.edyoda.com [email protected]
• Regex Object Methods
www.edyoda.com [email protected]
React, Redux
1. React Introduction:
• What is React?
• Understanding Single Page Applications and Multi Page Applications
• Real-World SPAs & React Web Apps
4. Components in Depth:
• Stateful vs Stateless Component
• Class-based vs Functional Component
• Component Lifecycle
• DOM vs Virtual DOM
• shouldComponentUpdate() for Optimization
• Pure Components
• Higher Order Component (HOCs)
• PropTypes
5. Debugging:
• Using Browser DevTools
• Working with React DevTools
• Using Error Boundaries
www.edyoda.com [email protected]
6. Connecting React App to Web
• HTTP requests in React
• Installing and Understanding Axios
• Async/Await
• Fetching data from Server
• Sending data to Server
• Deleting data on Server
• Global Configuration for Axios
• Handling Network Errors
7. Routing:
• Setting up React-Router
• Links
• Switch
• Passing Route Parameters
• Redirecting Requests
• Conditional Redirects
• Handling 404
8. Redux:
• Complexity of Managing State
• What is Flux?
• What is Redux? Why Redux for React?
• Understanding Redux Flow
• Setting up Reducer and Store
• Actions and Subscriptions
• Connecting Redux to React
• Updating State Immutably
• Handling Multiple Reducers
9. Testing:
• Intro to React testing
• Intro to test-utils
• Intro to Jest for testing React Apps
www.edyoda.com [email protected]
MongoDB
1. MongoDB Fundamentals
3. MongoDB database
4. MongoDB shell
NodeJS
1. Introduction to Node.js
• What is Node.js?
• Traditional Web Server Model
• Node.js Process Model
• Installation and Environment setup
• Command Line Interface
2. Node.js Components
• Routing in Node.js
• Callbacks
• Blocking and Non-blocking Functions
3. Node Js Modules
• Functions
• Buffer
• Streams
• Module and Module Types
• Core Modules
• Local Modules
www.edyoda.com [email protected]
• Importing Modules
• Module.Exports
6. File System
• Fs.readFile
• Writing a File
• Writing a file asynchronously
• Opening a file
• Deleting a file
• Other IO Operations
8. Events
• Event Loop
• EventEmitter class
• Returning event emitter
• Inhering events
www.edyoda.com [email protected]
• Node.js MYSQL Database
Express.js
1. Express.js Framework
2. Configuring routes
3. Middlewares
7. Error Handlers
www.edyoda.com [email protected]
Mindset for Problem Solving
1. Mathematical Aptitude
• Percentages
• Profit and Loss
• Simple Interest and Compound Interest
• Work And Time
• Probability
• Permutation and Combination
• Profit and Loss
• Time & Speed
• Ratios and Proportions
• Data Interpretation
3. Computational Thinking
• Thinking before Doing/Coding
• Problem Identification
• Decomposition
• Pattern Recognition
• Abstraction
• Algorithm Design
• Computational Thinking Use Case 1
• Computational Thinking Use Case 2
4. Technical Puzzles
• Why are Puzzles part of interviews?
• The Art of solving puzzles
• Approach more important than the solution
www.edyoda.com [email protected]
• Puzzles for Vertical Thinking
• Puzzles for Horizontal Thinking
Professional Communication
www.edyoda.com [email protected]
3. Effective Understanding & Articulation
• Watching 20 movies from our suggested list
• Writing 1000 words essay on those movies
• Writing a summary of the movies
www.edyoda.com [email protected]
Computer Fundamentals
2. Linux Administration
• Introduction to Linux Operating Systems
• Basic Linux Commands
• File Management and Security
• The directory structure of Unix
• User Management
• Groups
• Shell types and basic commands
• Permissions
• sudo
• Systemd Services Start and Stop
• Resource Mgmt with systemctl
• Process Management (top, ps)
• Package Management(yum, apt, rpm)
• Managing disks (lsblk, df, mount, umount,du)
• File systems
www.edyoda.com [email protected]
o List
o Array
o Stack
o Queue
• Linked List
o Singly Linked List
o Doubly Linked List
o Circular Linked List
• Array
• Stack
• Queue
• Tree
• Basic Operations
o Traversing
o Searching
o Sorting
o Hashing
o Insertion
o Deletion
o Merging
• Searching techniques
o Binary search
o Linear search
• Recursion
• Fibonacci series
• Sorting Algorithm
o Bubble sort
o Insertion sort
o Selection sort
o Quick sort
o Merge sort
o Bucket sort
4. Database concepts
• Introduction to Databases
• Entity Relationship Model
• Relational Model
• Relational Algebra
• Normalization
• Transactions and Concurrency Control
• DBMS Architecture 2-level 3-level
• Data Abstraction and Data Independence
• Database Objects
www.edyoda.com [email protected]
• Entity-Relationship Model
• Generalization
• Specialization
• Aggregation
• Entity Relationship Diagrams
• Keys in Relational Model
• Candidate key,
• Super key
• Primary key
• Alternate key
• Foreign key
• Strategies for Schema design
• Schema Integration
• Data modelling
• Star Schema in Data Warehouse modelling
• Data Warehouse Modeling
www.edyoda.com [email protected]
6. Software Engineering
• Software Engineering Overview
• Features of Good Software:
o Operational Features
o Transitional Features
o Maintenance Features
• Software Development:
o Requirement Gathering
o Software Design
o Programming
• Software Design
o Design
o Maintenance
o Programming
• Programming:
o Coding
o Testing
o Integration
• Software Development Life Cycle
o Requirement Gathering
o System Analysis
o Software Design
o Coding
o Testing
o Integration
o Deployment
o Operation and Maintenance
• Types of SDLC
o Waterfall model
o Iterative Model
o Spiral model
o V Model
• Agile Concepts
• DevOps Concepts
• Microservices Architecture
• Features of Microservices Architecture
• Software Requirements
• Software Design Basics
• Analysis & Design Tools
o Data Flow Diagram
o Flow Chart
• Design Strategies
www.edyoda.com [email protected]
o Function-Oriented Design
o Object-Oriented Design
• User Interface Design
o Command Line Interface(CLI)
o Graphical User Interface (GUI)
• Design Complexity
• Software Testing Overview
o Manual Vs Automated Testing
o Testing Approaches
o Black-box testing
o White-box testing
o Unit Testing
o Integration Testing
o Functionality testing
o Acceptance Testing
o Regression Testing
• Quality Control
• Deployment Methods
o Blue-Green Deployment
o Rolling Deployment
• Software Monitoring
• Software Maintenance
7. Tools
• Git
o What is Git?
o Installing Git
o First-Time Git Setup
o Git Basics
o Getting a Git Repository
o Recording Changes to the Repository
o Viewing the Commit History
o Undoing Things
o Working with Remotes
o Tagging
o Git Branching
o Basic Branching and Merging
o Branch Management
o Branching Workflows
o Remote Branches
o Rebasing
• Putty
www.edyoda.com [email protected]
o Installation
o Types of connections
o Connecting to a remote server
o Using Auth keys
o Customizing putty
• Vim
o Vim Basics
o Insert Mode
o Visual Mode
o Command Mode
o Create and Edit a file
o Search and replace in Vim
o Vim diff
o Copy operations
o .vimrc file
o Vim Commands
www.edyoda.com [email protected]