Vue.js - JavaScript Framework für clientseitige Webanwendungen

Veröffentlicht am

Anfangs bla bla

Als erster Post des Tag Vorstellungsrunde möchte ich mit Vue.js beginnen. Ein stabiles und leicht zu erlernenedes Framework. Schnell zum einarbeiten, debuggen und benutzen. Und trotzdem flexibel genug um erweitert oder angepasst zu werden.

Ich nutze es beruflich und privat und muss sagen das der Workflow mit Vue.js wirklich ungeschlagen ist. Das ganze nun mittlerweile seit gut einem Jahr und so möchte ich auch mal meine Erfahrungen mit dem Framework teilen.

Einstieg

Der Einstieg in Vue ist extrem simpel. Es gibt eine exzellente Onlinedokumentation in der man sich schnell und unkompliziert zu recht findet. Parallel zu der bloßen Theorie kann ich nur empfehlen die vue-cli gleich zu installieren und live mit zu testen und parallel zu lesen.
Mit den Grundzügen ist man dann eigentlich nach ein paar Stunden gut vertraut. Bei tiefer gehenden Fragen und Problemen auf die man zu Beginn stößt lassen sich ebenfalls gut nachlesen.

Für was kann ichs nutzen?

Simpel gesagt für Browseranwendungen. Am besten eignet sich Vue.js für Single Page Applications oder auch um seine Website mit kleinen dynamischen Elementen aufzuhübschen oder die Serveranwendung ein kleines Stück feedbackreicher zu gestalten und dem Nutzer einen Mehrwert zu bieten. Grundsätzlich kann sie aber auch als Bibliothek verwendet werden. So ist es ein richtiger Allrounder und eignet sich für eigentlich alle Größen von Anwendungen. Hilfreich sind hierbei der extrem kleine Memory-Footprint und die kurzen Ladezeiten dank kleiner Artifakte.

Lernkurve im Vergleich zu Angular & Co.

Vue.js hat einige grundlegende Prinzipien die aber jedem Softwareentwickler mit einigen Jahren Erfahrung durchaus gefläufig sein sollten. Die wenigen sehr spezifischen Details und Vorgehensweisen lassen sich relativ schnell aneignen. Im Verhältnis zu Angular und Co. fällt so die lange und aufwändige Einarbeitungsphase gleich weg. Zudem wird die Konfiguration bereits durch die wie oben bereits erwähnte CLI sehr gut unterstützt. Bei Angular & Genossen hingegen stößt man oft auf sehr spezifische Vorgehensweisen und eigene Konzepte sowie eine fest vorgegebene Struktur. Bei Vue.js gibt es hier entgegen Empfehlungen die durchaus sinnig und auch der Übernahme durchaus Wert sind. Alles in allem eine sehr steile und angenehme Lernkurve.

Produktiver Einsatz

Ich entwickle alles was mehr als ein paar Schaltflächen und UI-Krams sind mit Vue. Dabei gefällt mir immer die schnelle und einfache Umsetzung die das Framework ermöglicht.

Besonders hilfreich ist es wenn ein zentrales State-Management erfolgen soll. Hier hat man vuex oder eine zweite Vue-Instanz zur Auswahl. Eine Alternative dazu ist eine simple Vue.js Instanz nachzurüsten und als Eventbus und Speicher zu missbrauchen. Das ganze funktioniert am einfachsten und schnellsten ohne großen Aufwand.

Das Live-Reload ermöglicht zudem eine wahnsinnig schnelle und sehr feedbackreiche Entwicklung. So entsteht im Nu ein ansehnliches Ergebnis.
Auf wirklich gravierende Probleme bin ich selbst bei ausegfallenen Einsatzzwecken noch nicht gestoßen.

Zudem achtet das Entwicklerteam immer sehr auf die Rückwärtskompatiblität was dem Entwickler doch sehr entgegen kommt. So muss man nicht mit jedem Release bangen ob alles noch läuft wie zuvor. Breaking Changes werden relativ frühzeitig mitgeteilt und auch bei Nutzung mit einer entsprechenden Warnung in der Konsole quittiert.

Ökosystem

Vue ist im Gegensatz zu seinen Genossen noch relativ jung, hat aber dennoch schon eine sehr große Entwicklergemeinde die stetig wächst.
Für fast alles findet man fertige Komponenten die einfach eingebunden werden und schon genutzt werden können.
Das tolle ist hierbei das sie genauso schnell auch wieder durch eigene Komponenten ersetzt werden können. Besonders hilfreich wenn statt der einfachen "0815-Funktionen" plötzlich eine Komponente spezielle Eigenschaften haben soll die von der Standardkomponente weder angepasst noch hinzugefügt werden können.

The End of the Story

Vue ist mein persönlicher Favorit in jeglicher Hinsicht um schnell, einfach, unkompliziert und zukunftssicher Webanwendungen im Browser zu schreiben.
Es macht Spaß zu entwickeln und bietet einen guten Kompromiss aus Komfort für den Entwickler, Performance und Vorteile für den Endnutzer.

Dank Databinding und breitem Ökosystem sowie Entwicklerbasis ermöglichen den produktiven Einsatz ohne Bauchschmerzen. Eine klare Empfehlung für alle Unentschlossen, Umsteiger und Einsteiger von anderen JS-Bibliotheken und Frameworks.