Master the fundamentals of MEAN stack and deep-dive into every aspect of it.
In this course, we focus on the field of MEAN stack development and describe the processes, algorithms, and tools for one to be a successful practitioner of MEAN stack. Students will be exposed to various frameworks that make up MEAN such as Mongo DB, Express JS, Angular and Node JS.
Duration
5 days / 40 hours
Level
Intermediate to Advanced
Delivery
100% Online - Instructor Led
- Course CodeML101
- AudienceExperienced or entry-level software developers who want to learn how to leverage this powerful and modern web stack.
- LanguageEnglish
- CertificationAwarded by ICTC
Key Learning Outcomes
This course will also give students a chance to understand the fundamental issues and challenges of machine learning which include data, model selection, and model complexity.
This course will equip you with the necessary skills needed to excel in this field. By the end of the training program, you will be able to:
- Master software programming concepts and implement them in real-life
- Become an agile practitioner with the ability to quickly complete industry projects
- Build an end-to-end application from scratch and test it
- Test and deploy features seamlessly to production with minimal effort
- Build a running, industry-aligned project from scratch
Course Modules Covered in the MEAN Stack training program
Day 1 - Introduction, Introduction to TYPESCRIPT, Introduction to Angular, Building with Components, Data and Event Binding
Introduction
- Overview of ES5
- Installing Node and NPM
- JavaScript Basic Syntax
- Detailing on ES5 problems
- JavaScript project creation using NPM
- Introduction to TypeScript
- TypeScript Environment Setup
- Basic Syntax
- Types, Variables and Operators
- Decision Making and Loops
- JavaScript Functions
- Lambda Expressions
Introduction to TYPESCRIPT
- Overview
- Environment Setup
- Basic Syntax
- Types, Variables and Operators
- Decision Making and Loops
- Functions
- Lambda Expressions
- Generics
- Enums, Number and Strings
- Arrays, Tuples & Union
- Interface, Classes and Objects
- Namespaces
- Modules
- Ambients, Decorators & Mixins
- Exporting a module
Introduction to Angular
- Why Angular
- Angular Features
- Installing and Using Angular
- Creating the first Angular Project
- Architecture Overview
- What is new in Angular
- Summary
Building with Components
- Introducing the component
- Component Decorator Properties
- Template
- Inline Template
- Interpolation – Plain text, Object and Array
- Component Starter
- Integrating Bootstrap
Data and Event Binding
- Binding Syntax
- One-Way Output Binding
- Property binding
- Attribute binding
- Binding Events
- Setting Element Properties
- Two-Way Binding of Input Fields
- Input Binding Examples
- Summary
Day 2 - Attribute Directive, Structural Directives, Template Driven Forms, Services and Dependency Injection, RxJS and Observables, HTTP Client, Pipes and Data Formatting, The Angular Component Router
Attribute Directive
- What are Directives
- Directive Types
- Apply Styles by Changing Classes
- Applying Styles Directly
- Obsolete Directives and Property Binding
- Controlling Element Visibility
- Setting Image Source Dynamically
- Setting Hyperlink Source Dynamically
- Summary
Structural Directives
- Adding and Removing Elements Dynamically
- Looping Using ngFor
- Creating Tables with ngFor
- Swapping Elements with ngSwitch
- ngSwitch - Basic Syntax
- ngSwitch - Full Template Syntax
- Summary
Template Driven Forms
- A Basic Angular Form
- Binding Input Fields
- Binding the Form Submit Event
- Basic HTML5 Validation - "required" Attribute
- Angular Validators
- Displaying Form Validation State
- Displaying Field Validation State
- Displaying Validation State Using Classes
- Disabling Submit when Form is Invalid
- Submitting the Form
- Summary
Services and Dependency Injection
- What is a Service?
- Creating a Basic Service
- What is Dependency Injection?
- What Dependency Injection Looks Like
- Injecting Services
- Using a Service in a Component: Dedicated Instance
- Using a Service in a Component: Dedicated Instance - Example Code
- Using onInit to Initialize Component Data
- Using a Shared Service Instance
- Dependency Injection and @Host
- Dependency Injection and @Optional
- Summary
RxJS and Observables
- What is an Observable?
- Observable Operators
- Creating Observables Using Static Operators
- What is an Observer?
- Observer Example
- Subject
- Subject Example
- EventEmitter or Observable
HTTP Client
- The Angular HTTP Client
- Service Using Http Client
- Service Imports
- The Observable object type
- Making a Basic HTTP GET Call
- Using the Service in a Component
- Importing Observable Methods
- Enhancing the Service with .map() and .catch()
- Using toPromise()
- GET Request with Options
- POST Request
- Reading HTTP Response Headers
- Summary
Pipes and Data Formatting
- What are Pipes?
- Using a Built-in Pipe
- Chaining Pipes
- Using Custom Pipes
- A Filter Pipe
- A Sort Pipe
- Summary
The Angular Component Router
- Routing and Navigation
- The Component Router
- Component Router Terminology
- Setting up the Component Router
- Browser pushState and
- Routes
- The app.routes.ts File
- App Routes
- App Component
- Programmatic Navigation
- Passing Data During Navigation
- Creating Routes with Route Parameters
- Navigating with Route Parameters
- Using Route Parameter Values
- Retrieving the Route Parameter Synchronously and Asynchronously
- Query Parameters
- Problems with Manual URL entry and Bookmarking
- Fixing Manual URL entry and Bookmarking
- Summary
Day 3 - Introduction, Node Projects, HTTP, File System, Buffers, Streams, and Events, Modules and Unit Testing
Introduction
- Foundation
- The Node.js framework
- Advantages of Node JS
- Installing Node.js
- Using Node.js to execute scripts
- Traditional Web Server Model
- Node.js Process Model
Node Projects
- The Node Package Manager
- Creating a project
- The package.json configuration file
- Installing Packages Global
- Installing Packages Locally
- Adding dependency in package.json
- Installing packages globally
- Updating packages
- Scripting through package.json
- Automating tasks with Gulp
HTTP
- The HTTP protocol
- Creating web server
- Handling http requests
- Sending requests
- Building an HTTP server
- Rendering a response
- Processing query strings
- Using Representational State Transfer
- Node JS Console
- Configuring TLS
File System
- Synchronous vs. asynchronous I/O
- Path and directory operations
- __dirname and __filename
- Synchronous file reads
- Synchronous file writes
- Asynchronous file reads
- Asynchronous file writes
Buffers, Streams, and Events
- Using buffers for binary data
- Flowing vs. non-flowing streams
- Streaming I/O from files and other sources
- Processing streams asynchronously
- Configuring event handlers
Modules and Unit Testing
- Modularization
- The CommonJS and RequireJS specifications
- Defining modules with exports
- Modules are singletons
- Creating a package
- Module scope and construction
- Unit testing frameworks
- What to test and how to test it
- Building unit tests with Mocha
Day 4 - Event, Express, Data Sources
Event
- When to use Event Emitters
- Binding Functions to Events
- Event Requests
- Event Listening
- What are callbacks
- Callback-last
- Error-first
- Callbacks: Error-first
- Errors in Event Emitters
- Uncaught Exceptions
- Using Domains
Express
- The model-view-controller pattern
- Defining Jade and Handlebars templates
- Building a front-end controller
- Defining routes
- Creating actions
- Configuring Express to use Handlebars
- Using REST
- Reading POST data
- Building Handlebars helpers
- Adding middleware
Data Sources
- How Node.js connects to databases
- Configuration and platform setup
- RDBMS databases and NoSQL databases
- Connecting to RDBMS
- Connecting to NoSQL databases
- Performing CRUD operations
- Building client requests to web services
Day 5 - Introduction to MongoDB, Data Modelling, Queries , Simple Updates and Deletes ,Indexing and query optimization ,More Complex Types of Queries
Introduction to MongoDB
- Overview of MongoDB
- MongoDB fundamentals
- Architecture of MongoDB
- Database
- Collection
- Document
- Advantages of MongoDB
- Why use MongoDB
- When to use MongoDB
- Install MongoDB
Data Modelling
- Create Database
- Drop Database
- Create Collection
- Drop Collection
- Data Types
- Insert Document
- Query Document
- Update Document
- Delete Document
Queries
- Field equality tests
- Operators available
- Projections
- Limiting Records
- Paging
- Sorting Records
Simple Updates and Deletes
- Field updates
- Field insertions and removal
- Document deletion
- Existential field values
Indexing and query optimization
- Indexing theory
- Indexing in practice
- Query optimization
More Complex Types of Queries
- Existential field values
- Aggregations and groups
- Aggregations and groups in hierarchical data
Our Training Methodology
Practical Assignments
We provide hands-on assignments that requires practical implementation.
Virtual Coaching Sessions
Online coaching sessions that happen over the phone, via video, or on a web platform.
1 Year Access to LMS
Get access to learning resources upto 1 year of class completion.
Live Project Experience
Hands-on learning and training gives participants the opportunity to experience real world situations.
Online Assessments
Participants can assess reflect on their own learning and their level/skills.
Free Industry Webinars
Stay current on market research trends, learn best practices through our webinar sessions.
Key Features
- 40 hours of instructor led training
- Fully Online
- Class recording available
- Interactive Learning
- 8 hour Coaching Session
- 100% HRDF SBL-KHAS Claimable!
Pre-Requisites
- General programming experience and knowledge of HTML, CSS and JavaScript.
- Analytical Mindset
- Willingness to self learn online
- We will start from the very basics
- Committed to complete all tasks
Who Should Join
- Professional switching careers
- Business Analysts
- IT Engineers
- Students
- New Programmers
Program Key Highlights
40 hours of Remote Online Learning
80 Additional Self Learning Hours
12 Live Hands-on Projects
Certified by International Body
Mentorship with Industry Experts
Designed for Beginners & Professionals
Request for more Information
Your Instructor
Thayanithy Jegan
CTO & Co-Founder of Thulija Technologies,
Certified Trainer and Consultant
Certified Trainer and Consultant
A seasoned technology professional with over 17 years of industry experience as a software developer, solutions architect and technology consultant for major organizations.
Thayanithy Jegan has trained executives and developers in companies such as Maxis, IFCA, SWIFT, PSDC, DHL, Standard Chartered, Infineon Technologies, Siemens and Bank Negara to name a few to break into various technology stacks and as well as data science, big data, and artificial intelligence.
He has led major projects with clients such as Suruhanjaya Syarikat Malaysia (SSM), MYCOID, Kementerian Kerja Raya, Ministry of Education (MOE), Universiti Malaya, Perfisio Solutions, Kementerian Perdagangan Antarabangsa dan Industri, amongst others. He has also served as a Consultant for MIMOS Berhad, a Research and Development organisation that functions as an advisor to the Malaysian Government on technologies, policies and strategies relating to IT.
Get Professionally Certified
Upon successfully completing this program, participants will be awarded the Professional Certification in Python Data Science by International Council for Technology Certifications (ICTC).
This award is a validation to the efforts taken to master the domain expertise that will set you apart from your competition.
Be a part of the global network of data science professionals and join the community across sectors.
MEAN Stack Training FAQs
1Do I Get A Certificate At The End Of The Course?
Yes.You will get a certificate at the end of the course from Thulija Academy.
2How Will The Labs Be Conducted?
Labs will be conducted through online means. Recorded playbacks are provided to participants after the sessions are over.
Get in Touch With Us Today!
This training program is suitable for anyone who intends to enter into the field of Software Development. This program is being conducted in Malaysia and can be joined by anyone, anywhere in the world remotely.
Program Fee
RM 3,700.00
One-time fee. One year access to course materials.
READY TO KICKSTART YOUR CAREER?
Please fill in the form and a Program Advisor will reach out to you. You can also reach out to us at info@thulija.com or +60123661502
Contact us on Whatsapp for more enquiries