Customized Onsite Training

5
Days
  • Customized Content
  • For Groups of 5+
  • Online or On-location
  • Expert Instructors
Request Class or call 1-877-932-8228

Live Online Training

$2,625.00
or 5 vouchers
  • Live Online Training
  • Expert Instructors
  • Guaranteed to Run
  • 100% Free Re-take Option
Request Class or call 1-877-932-8228
Overview

MEAN [MongoDB, Express, AngularJS, and Node.JS] represents a new breed of software platforms that creatively leverage a stack of production-ready technologies centered on JavaScript.

This MEAN JavaScript Technology Stack training course introduces the students to the essential concepts, design principles, idioms, and techniques behind the efficient use of the MEAN JavaScript Technology Stack.

Goals
  1. Gain a solid understanding of MEANS’ value proposition.
  2. Gain practical experience working with all the components of the MEAN stack.
Outline
  1. Introduction to AngularJS
    1. What is AngularJS?
    2. Why AngularJS?
    3. Scope and Goal of AngularJS
    4. Using AngularJS
    5. A Very Simple AngularJS Application
    6. Building Blocks of an AngularJS Application
    7. Use of Model View Controller (MVC) Pattern
    8. A Simple MVC Application
    9. The View
    10. The Controller
    11. Data Binding
    12. Basics of Dependency Injection (DI)
    13. Other Client Side MVC Frameworks
    14. Summary
  2. AngularJS Module
    1. What is a Module?
    2. Benefits of Having Modules
    3. Life Cycle of a Module
    4. The Configuration Phase
    5. The Run Phase
    6. Module Wide Data Using Value
    7. Module Wide Data Using Constant
    8. Module Dependency
    9. Using Multiple Modules in a Page
    10. Summary
  3. AngularJS Controllers
    1. Controller Main Responsibilities
    2. About Constructor and Factory Functions
    3. Defining a Controller
    4. Using the Controller
    5. Controller Constructor Function
    6. More About Scope
    7. Example Scope Hierarchy
    8. Using Scope Hierarchy
    9. Modifying Objects in Parent Scope
    10. Modified Parent Scope in DOM
    11. Handling Events
    12. Another Example for Event Handling
    13. Storing Model in Instance Property
    14. Summary
  4. AngularJS Expressions
    1. Expressions
    2. Operations Supported in Expressions
    3. AngularJS Expressions vs JavaScript Expressions
    4. AngularJS Expressions are Safe to Use!
    5. What is Missing in Expressions
    6. Considerations for Using src and href Attributes in Angular
    7. Examples of ng-src and ng-href Directives
    8. Summary
  5. Basic View Directives
    1. Introduction to AngularJS Directives
    2. Controlling Element Visibility
    3. Adding and Removing an Element
    4. Dynamically Changing Style Class
    5. The ng-class Directive
    6. Example Use of ng-class
    7. Setting Image Source
    8. Setting Hyperlink Dynamically
    9. Preventing Initial Flash
    10. Summary
  6. Working with Forms
    1. Forms and AngularJS
    2. Scope and Data Binding
    3. Role of a Form
    4. Using Input Text Box
    5. Using Radio Buttons
    6. Using Checkbox
    7. Using Checkbox - Advanced
    8. Using Select
    9. Using Select – Advanced
    10. Disabling an Input
    11. Reacting to Model Changes in a Declarative Way
    12. Example of Using the ng-change Directive
    13. Summary
  7. Formatting Data with Filters in AngularJS
    1. What are AngularJS Filters?
    2. The Filter Syntax
    3. Angular Filters
    4. More Angular Filters
    5. Using Filters in JavaScript
    6. Using Filters
    7. A More Complex Example
    8. The date Filter
    9. The date's format Parameter
    10. Examples of Using the date Filter
    11. The limitTo Filter
    12. Using limitTo Filter
    13. Filter Performance Considerations
    14. Summary
  8. AngularJS $watch Scope Function
    1. The $watch Function
    2. The $watch Function Signature
    3. The $watch Function Details
    4. Canceling the Watch Action
    5. Example of Using $watch
    6. Things to be Aware Of
    7. More Things to Be Aware Of
    8. Performance Considerations
    9. Speeding Things Up
    10. Summary
  9. Communicating with Web Servers
    1. The $http AngularJS Service
    2. The Promise Interface
    3. The $http Service
    4. $http Function Invocation
    5. Callback Parameters
    6. Request Configuration Properties
    7. Shortcut Methods
    8. Complete List of Shortcut Methods
    9. Using $http.get()
    10. Working with JSON Response
    11. Using $http.post()
    12. Combining $http POST Request Data with URL Parameters
    13. The then() Method of the Promise Object
    14. The Response Object
    15. Making Parallel Web Service Calls
    16. Combining Multiple Promises into One
    17. Wait for the Combined Promise
    18. Setting Up HTTP Request Headers
    19. Caching Responses
    20. Disabling Caching in IE9
    21. Setting the Request Timeout
    22. Unit Testing with ngMock
    23. Writing Unit Tests
    24. Summary
  10. AngularJS Services
    1. Introduction to Services
    2. Defining a Service
    3. The factory() Method Approach
    4. The service() Method Approach
    5. The provider() Method Approach
    6. Using a Service
    7. Configuring a Service using its Provider
    8. Summary
  11. Introduction to Single Page Application
    1. What is a Single Page Application (SPA)?
    2. How is it Any Different?
    3. Why Create SPA?
    4. It's Not All or Nothing
    5. Challenges to SPA
    6. Implementing SPA Using AngularJS
    7. Simple SPA Using Visibility Control
    8. Dynamic Templates Using ng-include
    9. Example of Dynamic Template
    10. SPA Using the $route Service
    11. Summary
  12. The Route Service
    1. Introduction to the Route Service
    2. Downloading the Route Service Code
    3. Using the Route Service
    4. Setting up the Route Table
    5. URL Fragment Identifier
    6. Showing the Views
    7. Navigation
    8. The $location Service
    9. Programmatic Navigation
    10. Controllers for the Views
    11. Example Controllers for Views
    12. Passing URL Parameters
    13. Accessing Query Parameters
    14. Configuring Route Parameters
    15. Accessing Route Parameters
    16. HTML5 Mode
    17. Using the HTML5 Mode
    18. Bookmarking HTML5 Mode URL
    19. Summary
  13. Introduction to MongoDB
    1. MongoDB
    2. MongoDB Features
    3. MongoDB's Logo
    4. Positioning of MongoDB
    5. MongoDB Applications
    6. MongoDB Data Model
    7. MongoDB Limitations
    8. MongoDB Use Cases
    9. MongoDB Query Language (QL)
    10. The CRUD Operations
    11. The
    12. find
    13. Method
    14. The
    15. findOne
    16. Method
    17. A MongoDB QL Example
    18. Data Inserts
    19. MongoDB vs Apache CouchDB
    20. Summary
  14. MongoDB Architecture
    1. MongoDB Nexus Architecture
    2. Blending the Best of Both Worlds
    3. What Makes MongoDB Fast?
    4. Pluggable Storage Engines
    5. Data Sharding
    6. Sharding in MongoDB
    7. Data Replication
    8. A Sample Sharded Cluster Diagram
    9. GridFS
    10. Getting a File from GridFS
    11. MongoDB Security
    12. Authentication
    13. Data and Network Encryption
    14. Summary
  15. MongoDB Data Model
    1. The BSON Data Format
    2. Database Terminology
    3. MongoDB Data Model
    4. The _id Primary Key Filed Considerations
    5. Indexes
    6. (Traditional) Data Modeling in RDBMS
    7. Data Modeling in MongoDB
    8. An Example of a Data Model in MongoDB
    9. MongoDB Data Modeling
    10. A Sample JSON Document Matching the Schema
    11. To Normalize or Denormalize?
    12. MongoDB Limitations
    13. Data Lifecycle Management
    14. Data Lifecycle Management: TTL
    15. Data Lifecycle Management: Capped Collections
    16. Summary
  16. MongoDB Administration
    1. The Admin Shell
    2. Getting Help
    3. Admin Commands
    4. Starting MongoDB
    5. The mongod Web UI
    6. Running MongoDB .JS Scripts
    7. Shell Helper to JavaScript Equivalent Map
    8. A MongoDB Script Example
    9. Connecting to MongoDB
    10. User Authentication
    11. Authentication Options
    12. Import / Export Operations
    13. MongoDB Extended JSON and Strict Mode
    14. Examples of Strict Mode Encoding
    15. Examples of Data Import / Export
    16. The Robomongo Tool
    17. Robomongo Features
    18. Summary
  17. Working with Data in MongoDB
    1. Reading Data in MongoDB
    2. The Query Interface
    3. Query Syntax is Driver-Specific
    4. Projections
    5. Query and Projection Operators
    6. MongoDB Query to SQL Select Comparison
    7. Cursors
    8. Cursor Expiration
    9. Writing Data in MongoDB
    10. An Insert Operation Example
    11. The Update Operation
    12. An Update Operation Example
    13. A Remove Operation Example
    14. Limiting Return Data
    15. Data Sorting
    16. Aggregating Data
    17. Aggregation Stages
    18. Accumulators
    19. An Example of an Aggregation Pipe-line
    20. Map-Reduce
    21. Summary
  18. Indexes in MongoDB
    1. Indexes in MongoDB
    2. Creating an Index
    3. Listing Existing Indexes
    4. The Sort Order
    5. Using the Explain() Method
    6. Main Index Types
    7. The _id Field
    8. Single and Compound Indexes
    9. Multikey Indexes
    10. Other Index Types
    11. Index Properties
    12. Examples of Creating Indexes with Index Properties
    13. Summary
  19. Introduction to Node.js
    1. What is Node.js?
    2. Application of Node.js
    3. Node Package Manager (NPM)
    4. Installing Node.js and NPM
    5. "Hello, Node World!"
    6. How it Works
    7. Built on JavaScript – benefits
    8. Traditional Server-Side I/O Model
    9. Disadvantages of the traditional Approach
    10. Event-Driven, Non-Blocking I/O
    11. Concurrency
    12. Express
    13. Summary
  20. Module and Dependency Management
    1. Nature of a Node.js Project
    2. Introduction to Modules
    3. A Simple Module
    4. Using the Module
    5. Directory Based Modules
    6. Example Directory Based Module
    7. Using the Module
    8. Making a Module Executable
    9. Core Modules
    10. Loading Module from node_modules Folders
    11. Dependency Management Using NPM
    12. Installing a Package
    13. About Global Installation
    14. Setting Up Dependency
    15. Package Version Numbering Syntax
    16. Updating Packages
    17. Uninstalling Packages
    18. Alternate Dependency Management
    19. Summary
  21. The File System Module
    1. Introduction
    2. Basic File Manipulation
    3. Getting File/Directory Meta Data
    4. Read an Entire File
    5. The Buffer Class
    6. Writing to a File
    7. Reading in Chunks
    8. Writing in Chunks
    9. The open() Method
    10. Stream API
    11. The Readable Interface
    12. Example Reading Data in Chunks
    13. The Writable Interface
    14. Summary
  22. Basic Web Application Development
    1. Introduction to the HTTP Module
    2. The Request Handler Callback Function
    3. The Server Object
    4. Example Use of Server Object
    5. The Request Object
    6. The Response Object
    7. Parsing Request Body
    8. Serving Static Files
    9. The HTTP Client API
    10. Making POST/PUT/etc. Requests
    11. Where To go from Here?
    12. Summary
  23. Debugging and Unit Testing
    1. Problem Determination Options
    2. Using console.log
    3. Using the debug Logging Package
    4. Configure Logging
    5. The Node Inspector Debugger
    6. Basic Usage of the Debugger
    7. Unit Testing Node.js Applications
    8. Getting Setup
    9. Writing a Test Script
    10. Running Unit Test
    11. Testing Asynchronous Code
    12. Using the Chai Assert API
    13. The Chai Expect API
    14. Summary
  24. Introduction to Express
    1. Introduction to Express
    2. Basic Routing Example
    3. Defining Routing Rules
    4. Route Path
    5. The Response Object
    6. Supplying URL Parameters
    7. Ordering of Routes
    8. Defining Catch All Route
    9. Full Example Web Service
    10. Summary
  25. Express Middleware
    1. Introduction to Express Middleware
    2. Writing a Middleware Function
    3. Binding to a Path
    4. Order of Execution
    5. Raising Error
    6. Handling Error
    7. Serving Static Files
    8. Handling POST Request Body
    9. Enable Response Compression
    10. Summary
  26. Jade Template Engine
    1. Introduction to Jade
    2. Using Jade
    3. A Simple Template
    4. Passing Data to a Template
    5. Basic HTML Tag Rendering
    6. Rendering Values
    7. Conditional Rendering
    8. Rendering a List
    9. Layout Template
    10. Creating a Layout Template
    11. Creating a Content Template
    12. Summary
  27. Accessing MongoDB
    1. Getting Started
    2. The Connection URL
    3. Obtaining a Collection
    4. Inserting Documents
    5. Updating a Document
    6. Querying for Documents
    7. Deleting a Document
    8. Connection Pooling
    9. Summary
  28. Clustering and Failover
    1. Process Management
    2. Managing the Process Using OS Tools
    3. Installing a Service in Window
    4. Create an Upstart Script in Ubuntu
    5. Process Management Using forever
    6. Clustering Basics
    7. Example Clustered Application
    8. More About Clustering
    9. Child Process Failover
    10. Summary
Class Materials

Each student in our Live Online and our Onsite classes receives a comprehensive set of materials, including course notes and all the class examples.

Class Prerequisites

Experience in the following is required for this JavaScript class:

  • Basic knowledge of JavaScript programming and web development.
Preparing for Class

No cancelation for low enrollment

Certified Microsoft Partner

Registered Education Provider (R.E.P.)

GSA schedule pricing

72,346

Students who have taken Live Online Training

15,155

Organization who trust Webucator for their training needs

100%

Satisfaction guarantee and retake option

9.42

Students rated our trainers 9.42 out of 10 based on 5,232 reviews

Contact Us or call 1-877-932-8228