AngularJS Good Practices
Jump to navigation
Jump to search
THIS IS A DRAFT
This text may not be complete.
AngularJS Good Practices
AngularJS Good Practices Training Materials
Copyright Notice
Copyright © 2004-2023 by NobleProg Limited All rights reserved.
This publication is protected by copyright, and permission must be obtained from the publisher prior to any prohibited reproduction, storage in a retrieval system, or transmission in any form or by any means, electronic, mechanical, photocopying, recording, or likewise.
Intro
Angular Bespoke Course Outline
(Proposition of potential agenda, can be adjusted or extended)
2 days training
Bespoke agenda
- Avoiding major pitfalls of scaling an AngularJS app
- Proper MVC directory structure
- Writing Modules in a smarter way
- Keeping the names consistent
- Modularize the Header, Footer, Routes
- Dependency injection and minifying the code
- Global dependencies
- Not-overusing Controllers
- Syntax of 'controllerAs'
- Using 'bindToController' in our Directives
- Making 'ng-click' conditional
- Factory vs Service
- All providers are singletons
- Utilizing browser extensions (Batarang, etc)
- To many watchers and performance issues
- Scoping
- Write-only in the controllers
- Read-only in the templates
- Object in the scope instead of properties
- Avoiding to shadow property of the parent '$scope'
- Prototypical inheritance
- Keeping scope uncluttered
- How to talk with sibling objects
- One-Time Binding
- Not-manual testing
- ngMock module
- Protractor
- e2e tests with Jasmine
- '$digest' cycles
- Karma
- How to easly close the feedback loop
- Run tests in parallel across different browsers
- Real world usage scenarios with different devices
- Not-using jQuery
- Change the way of thinking
- Proper deploying
- Facade to interact with servers
- Separation of server interaction and error handling from the model
- Business logic in models
- Configure providers before they are injected
- Proper use of '$scope.$emit()' and '$scope.$broadcast'
- Automating our workflow
- yo, grunt, bower
- Facade to interact with servers
- Agnular 1 vs Angular 2
- Differences and similarities
- Three ways: typescript, pure js, dart
- Good practices in Angular 2
- Upgrading from 1