If you’re a developer looking for a progressive web framework to build user interfaces and single-page applications, you’ve probably heard of Vue.js. If you’ve used Vue, odds are pretty good that you love it, as Stack Overflow survey data suggests. Vue is, after all, tiny in size (18 KB fully zipped), offers virtual DOM, comes with great documentation and more. Need more information to help you decide whether Vue is worth your time? Well, you can ask Sarah Drasner, part of the Vue core team, as Khaled Al-Ansari did.
This was her response.
Making hard things easy
There are all sorts of online resources that tout the virtues of Vue (like this one), and plenty of surveys (like this one) suggesting it’s one of the hottest programming frameworks around. But Drasner, a former Netlify and Microsoft executive and member of the Vue core team, with a very nerdy bent (in the best sense of “nerd”), is the perfect guide to why Vue is important.
SEE: The best programming languages to learn–and the worst (TechRepublic Premium)
Responding to Al-Ansari, Drasner pointed to a number of benefits that Vue delivers:
Extremely declarative; your code can be highly organized and legible because of nicely done abstractions. Related to this, in a blog post, Drasner touted the virtues of computed properties in Vue: “They are calculations that will be cached based on their dependencies and will only update when needed. They’re extremely performant when used well and extraordinarily useful. There are many large libraries that handle this kind of logic that you can now eliminate with only a few lines of code.”
Abstractions break down when you can’t get under the hood. Vue provides great APIs so that you can do just this, such as custom directives, watchers and the like. The new Composition API allows for a few ways to structure reusable pieces of a larger codebase.
Things in the ecosystem like Vuex, Nuxt, Vue Router and Gridsome offer extremely nice tools with great DX that are a pleasure to work with.
Single File Components can be wonderful to work with because you can encapsulate everything you need right there without a lot of jumping around to many different files.
SEE: Developer code reviews: 4 mistakes to avoid (free PDF) (TechRepublic)
As popular as React has been, Vue arguably improves upon React by combining the best of both AngularJS and React: “Features like component-based approach, the one-way data flow for component hierarchy, virtual rendering and state management of app are features that are borrowed from ReactJS. The templates, syntax and easy user interface have been borrowed from AngularJS.” The result is a highly performant, easy-to-learn, powerful framework for building applications. You, like Drasner, just might love it, too.
Disclosure: I work for AWS but the views expressed herein are mine.