A Fundamental Go-through into Javascript World
JavaScript is a cross-platform, object-oriented scripting language. It is a small and lightweight language. Inside a host environment like a web browser.
JavaScript contains a standard library of objects like other languages, such as Array, Date, Math and a core set of language elements such as operators, control structures, and statements. Core JavaScript can be extended for a variety of purposes by supplementing it with additional objects.
This is a fundamental overview to introduce new developers to JavaScript and help experienced developers learn and explore more about its best practices.
JS Code Styles
- Conventions
- Linting
Good Parts of Javascript
- Object Oriented
- Anonymous Function
- Functions as first class objects
- Loose typing
- Scoping and Hoisting
- Function Binding
- Closure Function
- Strict mode
- Immediately-invoked function expression
Patterns of Javascript
- Design pattern {Factory, Prototype, Mixin, Singleton}
- Creational Design Pattern {Adapter, Bridge, Composite, Decorator, Facade, Flyweight, Module, Proxy, Revealing Module}
- Structural Design Pattern {Chain of responsibility, Command, Mediator, Observer}
- MV* Pattern {MVC , MVVM, MVP}
Frameworks & Libraries
- jQuery
- YUi
- ZeptoJS
- Dojo Tookit
- UnderscroreJS
- Lodash
- BackboneJS
- EmberJS
- KnockoutJS
- AngularJS
- Cappuccino
- JS MVC
- 6to5
- Babel
- Leaflet
- Meteor
- SpiceJS
- RiotJS
- CanJS
- React
- Ionic
- Redux
- Vue
- HandlebarJS
- DustJS
- GSAP
- VelocityJS
- BounceJS
- TweenJS
- MoveJS
- Snap
- Rekapi
- FavicoJS
- TexillateJS
- Motio
- Anima
- FabricJS
and more
Testing Tools
- Mocha
- QUnit
- Jasmine
- Karma
- intern
- Istanbul
- Sinon
- DexTer
- AVA
- Jest
Game Engines
- MelonJS
- ImpactJS
- LimeJS
- Crafty
- Cocos-2D-HTML-5
- Phaser
- Goo
- LycheeJS
- Qunitus
- KiwiJS
- PandaJS
- RotJS
- Isogenic
Helpers
- npm
- bower
- yarn
- gulp
- webpack
- brunch
- BCL
- yeoman
- grunt
- Rollup
- Browsify
- todoMVC
PASS Providers
- Heroku
- Modulus
- Nodejitsu
- OpenShift
- Getup
- WindowAzure
