Salesforce developed Lightning Web Components after Apex, Visualforce, and Lightning Components (Aura).
Apex and Visualforce were fantastic innovations from Salesforce based on Java and HTML but they had some very serious shortcomings that made it difficult. For one, Salesforce needed to ensure there was always sufficient computing resources for every web request.
Secondly, they didn’t work well for mobile computing (phones, tablets, etc.) or the desktop.
Aura Components were originally released but they missed the mark. They missed out on all of the awesome functionality from modern JavaScript, so they released Lightning Web Components. Aura Lightning Components aren’t dead yet, but they will slowly fade away as you can read about in the post “Are Lightning Components dead?“.
Salesforce Lightning Web Components (LWC) is a modern, lightweight programming model for building web-based applications on the Salesforce platform. It is based on web standards and leverages the latest capabilities of modern browsers, such as native support for modules, classes, and decorators.
One of the key benefits of LWC is its ability to coexist and interoperate with the older Aura framework, allowing developers to mix and match both technologies in the same application. This allows for a gradual transition to LWC and the ability to leverage the benefits of both frameworks.
LWC is built on top of a lot of the principles of other popular JavaScript frameworks and standard JavaScript and component development. This means that LWC benefits from the stability, performance, and security of these underlying frameworks.
One of the key principles of LWC is its focus on reusable, modular code. LWC components are designed to be self-contained units of functionality that can be easily reused in different parts of an application. This modular approach helps to reduce code duplication and makes it easier to maintain and update applications.
LWC also includes a set of powerful features, such as support for reactive data binding, which allows components to automatically update their rendering based on changes to their data. It also includes a rich set of built-in component libraries, including form elements, data tables, and charts, which can be easily integrated into applications.
Wrapping it Up
Overall, LWC is a powerful and modern tool for building web-based applications on the Salesforce platform. It offers a wide range of features and benefits, including modularity, interoperability with the Aura framework, and a rich set of built-in component libraries.
Also published on Medium.
Pingback: Using Data - Attributes in Lightning Web Component (LWC) - Brian Cline