Overview
MEAN is an open-source JavaScript software stack commonly used for building dynamic websites and web applications. It comprises of MongoDB, Express.js, AngularJS as well as Node.js. It can be utilized for both server-side and client-side execution environments.
Cognixia’s MEAN Stack training is an all-inclusive course designed to train participants in creating enterprise-style applications with server-side code using Node.js, Express framework, front-end coding using Angular.js, and databases with MongoDB. This training program has become one of the most popular and in-demand among learners, because of the countless benefits it offers with a comprehensive combination of technologies.
What You'll Learn
- Core concepts of Mongoose
- Working with Express.js
- Real-time programming with Socket.io
- Scaling node.js applications
- Working with Angular.js
- Working with Node.js
Curriculum
- Installing MongoDB
- The current SQL/NoSQL landscape
- Document-oriented vs. other types of storage
- Mongo’s feature set
- Common use-cases
- MongoDB databases
- MongoDB Collections
- MongoDB Documents
- Creating documents
- Querying documents
- Updating documents
- Deleting documents
- Word on ORM/ODM
- Installing Mongoose
- Connecting to MongoDB from Mongoose
- Understanding Mongoose schemas and datatypes
- Working with Models
- Using modifiers in schema
- Using virtual fields
- Optimizing query performance by enabling indexes
- Working with hooks
- Validation of model data
- Creating custom static methods
- Creating custom instance methods
- CRUD operations with Mongoose
- Installing express
- First App with express – Demo
- Little about routes
- Little about Express middleware
- Serving static files with express
- Express application generator
- What is js
- Route methods
- Route paths
- Parametrized routes
- Route handlers
- Express router
- Types of middleware
- Error middleware
- Body parser, cookie parser, session management
- What are template engines?
- EJS
- Jade
- Handlebars
- Authentication
- JWT
- Securing routes
- The Child-process model
- exec, spawn, and fork functions
- Using the Cluster module
- User experience similar to a Desktop Application
- Productivity and tooling
- Performance
- Community
- Full-featured framework
- Platform for targeting native mobile browsers
- js (Angular 1.x)
- Angular 0
- View engine generating smaller code
- Enhanced *ngIf syntax
- Animation code in own packages
- TypeScript 1
- Improved compiler speed
- Angular universal
- Components
- Templates
- Inline templates
- Multi-line templates using ES6 template literals
- External with component-relative paths
- Modules
- Models
- HTML in templates
- Interpolation
- Binding syntax
- Property binding
- Event binding
- Two-way data binding
- Attribute, class, and style bindings
- Built-in directives
- Template input variables
- The NgSwitch directives
- Component communication
- Input properties
- Output properties: Custom events using EventEmitters
- Angular’s dependency injection system
- Registering
- Injecting
- Using services to access data
- NgSubmit directive
- FormsModule
- NgForm, NgModel
- Displaying validation messages
- Styling validation messages
- Deciding between promises or observables (RxJS)
- Making http GET requests
- Making http POST and PUT requests
- Issuing a http DELETE request
- Importing the RouterModule and routes
- Configuring routes
- Displaying components using a RouterOutlet
- Navigating with RouterLink
- Accessing parameters
- Organizing your code into modules
- Working with logging and error handling
- JSON-based communication
- Route guards
- Auth0 based security
- Tools: Jasmine, Karma
- Jasmine Syntax: describe, it, beforeEach, afterEach, matchers
- Setup and your first test
- E2E Testing
- Reactive forms module
- Abstract control, form control, form group, and form array
- Form builder
- Validators
- Built-in pipes: Using, Passing parameters, Chaining
- Creating a custom Pipe using Pipe Transform
- Understanding Pure and Impure Pipes
- What is js?
- A word on eventloop
- Event-driven architecture
- Blocking vs. non-blocking code
- Setup js
- Node REPL
- HelloWorld program
- Debugging node.js app
- Understanding exports and require
- Creating modules
- Importing modules
- Quick tour on npm
- Installing third-party modules
- Significance of Events
- Event Emitter class
- Emitting and listening to events
- Types of streams
- Working with streams
- Composing streams using pipe
- Process object
- Handling exceptions at process level
- Listening to process events
- Working with file system using fs module
- Creating, copying, deleting files
- Creating, copying, deleting directories
- Watching for file changes
Who should attend
- Software developers
- Web developers
- Web designers
- Web masters
- Full stack developers
- Software engineers