38

Which JS Frameworks Will Spark a Front-end Revolution in 2020?

 5 years ago
source link: https://www.tuicool.com/articles/QRJzui6
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

Editorial

What are web developers looking for in their tech stacks? I think it mainly comes down to two types of performance: You want rapid development and you want the UI to be snappy. Sounds simple enough.

But the implied context is a set of mechanics that, above all, work correctly. Underneath all JavaScript frameworks and technologies in 2019 are choices among paradigms: functional versus object-oriented programming, MVC versus MVP versus MVVM, and so on. These choices are heralded by various meta-developers as the best way to avoid hurting ourselves because there are plenty of pitfalls in front-end development.

If you don't think managing state is tricky, consider the fact that 80% of all problems in all complex systems are fixed by rebooting.

— stuarthalloway (@stuarthalloway) June 1, 2019

In other words,front-end developers in 2020 will need what they’ve always needed: Technology that makes state management simple and reliable, even in complicated situations.

Often, we mere mortals need to choose JS frameworks to use now , and not after weeks of research. In that case, the default is clear: Go with what you know.

But when we’re disillusioned with what we know, we might take a step back: “Dependency injection makes sense to me, so which DI-based framework delivers the smoothest developer experience?” (If you really grok it, you might do your own DI without using JS frameworks .)

Or maybe the stacks we’re familiar with are no longer cutting it in terms of performance. Especially if you’re interested in supporting the ever-growing segment of the population with machines less powerful than what the average developer uses , maybe you’re asking, “Which front-end JavaScript frameworks deliver a reasonably fast UX on low-end hardware?”

Making a Fully-informed Choice (Good Luck!)

Almost always there are more choices than time to properly choose among them . Even just choosing amongVue.js,React, andAngular is difficult for newcomers: It’s easy to find someone arguing why Vue.js is the best for every project, no questions asked and just as easy to find someone who isn’t quite as convinced, two years after switching from React . Still, others would argue that the best approach is to avoid frameworks altogether . So how do you navigate this, especially if you’re open to choices beyond The Big Three?

Rather than try to be exhaustive, we’ve assembled a taste of various client-side approaches that professional developers in the Toptal network have had experience within a JS context: AMP, Svelte, Cycle.js, Polymer, Mithril, Hyperapp, Preact, and Aurelia.

In the comparison table we put together for the main article, I had originally asked each author whether they thought the JS framework they covered lived up to its aspirations. I left this out, because the answer in every single case was yes! If this is true, why aren’t more people using these different JavaScript frameworks?

Front-end Framework Popularity and Critical Mass

It’s always difficult to obtain reliable usage data, but these projects are all firmly-established enough to be practical alternatives. It’s true that in a professional context, you want to make it easy enough to hire someone with appropriate experience to maintain or extend your code. This carries considerable weight, especially with project managers.

But a solid counterpoint to this thinking is that maintainability isn’t necessarily about popularity. The game is always changing, and it’s more important to produce code that future developers can understand, even if they’re not specialized in its particular dependencies. Three years from now, Angular developers won’t be waiting around to work on your legacy project, after all—they will have shifted their focus by then as well, even if it’s only to newer architectures within the Angular world.

Some of our authors assume outright that the alternatives they cover here will never become “the next big thing.” The hope there, instead, is that their existence provokes the most popular JS frameworks to adopt their best features. They would answer our title question: To be brutally honest, maybe none of them in particular. Nonetheless, as with any technological alternatives, professional developers can learn a lot from exploring them.

Also, you never know—some of these approaches are learning from each other. Vasiliy Ruzanov details in our main article how the Elm Architecture is finding its way into front-end development via Hyperapp. One Mithril JS developer celebrated that the new Svelte JS basically has Mithril JS streams ; as Justen Robertson describes for us, streams are also key to the architecture of Cycle.js.

The smaller development communities inherent to alternative JavaScript tech may be able to shift gears more nimbly than those of mainstream JS frameworks. Will that help them gain traction? We’ll have to see.

What Can Be Learned from AMP JavaScript, Svelte JS, Cycle.js, Polymer JS, Mithril JS, Hyperapp JS, Preact JS, and Aurelia JS?

Maybe you end up using these modern JS frameworks and other front-end technologies for a serious project in 2020. Or maybe you experiment with them and decide to stay mainstream. Either way, our hope is that in our 2019 front-end roundup, you’ll at least discover something inspiring—something that helps you see web development in a new way. You’ll find our front-end framework comparison comes complete with an apples-to-apples companion demo for each of the technologies we cover. Enjoy!


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK