08 Application Frameworks
JavaScript Ecosystem

Why frameworks?

Advantages

  • Reduces development time
  • No need to reinvent the wheel
  • Enforced architectural guidelines, standards and patterns
  • Community support
  • Security

Why frameworks?

Disadvantages

  • Additional learning effort for the novice user
  • Lost understanding of low-level functionality
  • Flexibility
  • Lock-in
  • Possible overhead (YAGNI)
  • Keep up with new versions

History

First Generation JS frameworks (2005 - 2006)

  • Browser compatibility
  • DOM element selection
  • DOM manipulation
  • Webpage enhancements
JQuery logo Mootools logo Scriptaculous logo Prototype logo

History

Second Generation JS frameworks (2008 - 2010)

  • MVC / MVVM
  • Data Binding
  • Application Structure
Backbone logo Handlebars logo Knockout logo

History

Third Generation JS frameworks (2010 - 2013)

  • Full fledged application frameworks
  • Binding
  • Application Structure
  • Development lifecycle
  • Reusable components
AngularJS logo Ember logo React logo
The churn rate of front end JavaScript technologies is problematic People are starting to feel burned out and alienated by the pace of change breck-mckye.com

Trends

  • Less framework specific code thanks to
    • Modern WebApis
    • WebComponents
  • FullStack Frameworks (e.g. NextJS, SvelteKit, ...)
  • New Wave of tools
    • Less Legacy
    • Using the native platform

Conclusion

  • JavaScript frameworks have become very mature
  • Consider the use of a JavaScript framework in your project
  • A web developer needs to adapt to new technologies faster than any other developer
  • Better native layer through HTML5/ES6/Browser improvements which leads to less framework code
Angular logo Vue.js logo
Svelte logo React logo
thoughtworks radar

Questions?

Thank you!