Salesforce has come up with new programming model for developing lightning components based on Modern javascript. let us try to know the reasons behind it.
First of all, Modern javascript in the senseā¦
In 1995 modern was JavaScript events
In 2004 modern was AJAX
In 2006 modern was jQuery
In 2010 modern was Angular 1
In 2012 modern was Node.js
In 2014 modern was React and
In 2016 modern was Angular 2.
European Computers Manufactures Association has created ECMAScript or simply ES to standardize JavaScript (first edition in 1997 & latest Edition is ES2018 / ES9), so as to encourage multiple independent implementations.
In order to fill the gaps in web standards, different frameworks came up with new features / techniques like optimized rendering, HTML templating approaches, promises, classes, and other general utilities. So that at some point of time we felt like each framework to a different language (based on javascript), which makes very tough for the developer to ramp up all these frameworks..
In 2014 with ES5 / web standards 2014, Salesforce also came up with, Lightning Component framework with its own component model and its own modular programming model (aura) filling up the gaps in web standards.
This multiple frameworks problem has given rise the reason for re-standardization of web standards. As the result in last 5 years we have seen an unprecedented level of innovation and standardization. And then.., the web stack looks very different today than it did five years ago.
Many features that required frameworks now come standard: you no longer need a proprietary component model, proprietary language extensions, proprietary modules, etc.
Now..!, Salesforce has launched lightning web component(lwc) a new programming model based on latest 2019 web stack.
All resources about SFDC LG Was good and fantastic..