RKCP Information Technology




MEAN
Home » Courses   » MEAN

MEAN

Overview

This training of MEAN describes the process to create full stack web applications with MongoDB, Express and Angular.js, and Node.js. Participants build a MVC application using these technologies along with scaffolding provided by MEAN.JS.


Objective

  • To learn why server-side JavaScript is useful
  • Installation of Node.js
  • Get to learn how Node.js is architected to allow high scalability with asynchronous code
  • Get to create basic web applications with Node.js
  • Automate tasks with Grunt
  • To build an HTTP server using the core modules in Node.js
  • To use stream I/O to efficiently serve the web pages
  • To create modules to organize the server
  • To test the reliability of the application with unit tests
  • To convert the application to an MVC framework using Express
  • Steps from an Interface to a MongoDB database and a web service
  • To understand Mongo as a data store
  • To be comfortable with Mongo's query and update languages
  • To work with the common use-cases and architectures of Mongo
  • To use Mongo's built-in JavaScript interpreter
  • To query Mongo using Mongo's JSON-based query language
  • To index Mongo collections
  • To handle data with Mongo's built-in MapReduce capabilities.
  • To understand the design of single-page applications and how AngularJS facilitates their development
  • To properly separate the model, view, and controller layers of your application and implement them using AngularJS
  • To master AngularJS expressions, filters, and scopes
  • To build Angular forms
  • To elegantly implement Ajax in your AngularJS applications
  • To write AngularJS directives
  • To perform Unit test and end-to-end test of AngularJS application
  • To possess a basic knowledge of AngularJS’s native services
  • To create custom Angular services
  • To understand how Angular processes directives, including directive scope, priority, and transclusion
  • To build custom directives
  • To implement basic user interfaces with Angular Forms
  • To make Angular work with your chosen UI widget framework
  • To write more sophisticated end-to-end tests

  • Prerequisites

    Need to have a thorough knowledge of JavaScript and be familiar with web application design concepts (such as accessing databases and SOA concepts), as well as basic HTML and CSS.


    Syllabus

    Expand All
    • 1. Introducing Node.js
      • Installation of Node.js
      • Node's Event Loop
      • Alternatives of Node.js
      • Writing asynchronous code
    • 2. Modularizing code
      • Understand built-in modules
      • Techniques to modularize JavaScirpt code
      • Use require() to modularize application code
      • Use npm for third-party modules
      • Handling Exceptions
    • 3. Events and Streams
      • Understand Events
      • EventEmitter class
      • Understand Streams
      • Reading and writing streams
      • Using pipe()
    • 4. Accessing Local Resources
      • Process Object
      • Manipulating File System
      • Understand Buffers
    • 5. Node.js and the web
      • Handling web requests
      • Building a web server
      • Understand the need for web sockets
      • Realtime interaction using socket.io
    • 6. Building web applications using Express.js
      • Installation of Express.js
      • Routing
      • Parameters and queries in routing
      • Building views using Jade view engine
      • Using the blocks for layout
      • Displaying the data
      • Working with the forms
      • Serving the files
      • Working with cookies and sessions
      • Authentication and authorization
      • Error Handling
    • 7. Scaling Node applications
      • The Child process model
      • exec, spawn, and fork functions
      • Using the Cluster module
    • 8. Node.js Eco System
      • Node Packages
      • Packages of interest
      • Deciding Factors
    • 9. Monitoring
      • Monitoring Node.js processes
      • Detecting Memory Leaks
    • 10. Advanced
      • Configuration Node processes
    • 11. Introduction to Angular.JS
      • How Angular.js is opinionated
      • Difference between Backbone.js and Angular.js
    • 12. Angular.js Building Blocks
      • Controller Component
      • Model Component
      • View Component
      • Directives
      • Filters
      • Services
      • DI in Angular.js
    • 13. Anatomy of an Angular.js Applications
      • Creation of Boundaries using ng-app
      • Model View Controller
      • Templates and Data Binding
      • Repeating elements in templates
      • Use of Expressions, CSS Classes and Styles
      • Use of Controllers for UI responsibility separation
      • Responding to model changes
    • 14. Data Binding in Angular.js
      • Understanding Built-in Directives
      • Scope resolution
      • One way and Two way data binding
    • 15. Using Filters
      • Filters Overview
      • Understanding Filter Expressions
      • Building custom Filters
    • 16. Services
      • Services Overview
      • Modularity using Services
      • Injecting Services
    • 17. Directives
      • Directives Overview
      • Creating Directives
      • The Directive Definition Object
      • Compilation and Linking
      • Creating Components
    • 18. Communicating with Servers
      • Communicating over $http
      • Configuring the requests
      • Sending Http Headers
      • Caching Responses
      • Request and Response Transformation
      • Using RESTful Resources
      • Communication over WebSockets
    • 19. Unit Testing
      • Testing Models using Jasmine
      • Test considerations for Directives and Filters
      • Using Angular Mocks
    • 20. Modular JavaScript
      • Techniques for modularizing JavaScirpt code
    • 21. Miscellaneous
      • Overview of OSS Angular Modules
      • Customizing Angular Modules
    • 22. Overview
      • *NoSQL*
      • What is MongoDB?
      • JSON primer
      • When / why should you use MongoDB?
    • 23. Installation and Administration
      • Java Environment
      • Installing MongoDB
      • Starting and stopping MongoDB server
      • The JavaScript console
    • 24. MongoDB Basics
      • Servers
      • Databases
      • Collections
      • Documents / Objects
      • CRUD
      • Indexes
    • 25. Clients and drivers
      • Overview and integration
    • 26. Building applications with MongoDB
      • Overview
      • Getting started
      • Examples and labs
    • 27. Advanced querying
      • Projections
      • Conditional operators
      • Limit and skip
      • Aggregation and grouping
      • Map / reduce
    • 28. Security and Authentication
      • Overview
      • Best-practices
    • 29. Performance and scaling
      • Master / slave
      • Sharding
      • Profiler
      • Import / Export and backup strategies
    • 30. GridFS
      • Overview