- 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
Use case with cordova
Angular 1 vs Angular 2
- Differences and similarities
Three ways: typescript, pure js, dart
Good practices in Angular 2
Upgrading from version 1
|