Vor langer Zeit erinnerte die Welt des Frontends an eine Reihe chaotischer Codestücke, die dazu bestimmt waren, Funktionen für einen Clientteil einer Webanwendung zu erstellen. Es fehlte an Praktiken und Methoden, um den Prozess der Codeerstellung irgendwie zu standardisieren. Man kann sagen, dass die funktionalen Anforderungen an eine Webanwendung ihren Möglichkeiten weit voraus waren.
Glücklicherweise sind diese schlimmen Zeiten vorbei und die Ära der Reife für den Client-Teil der Anwendung ist gekommen. Jetzt gibt es in den Händen der Frontend-Entwickler mehr als genug Werkzeuge und Spezifikationen, um alles zu schreiben, was für die Lösung von geschäftlichen Herausforderungen notwendig ist. Es ist jedoch nicht immer möglich, mit der sich dynamisch entwickelnden Branche Schritt zu halten und das optimale Tool für die Erstellung des Frontends zu wählen. Dieser Artikel wird uns sagen, alle Geheimnisse des Kopierens ziemlich große Anwendung für Start-ups von vertraut für die meisten Entwickler jQuery zu VueJS.
Für die Vollständigkeit, lassen Sie uns einige Sätze zu verbringen, um eine Geschichte des Projekts, das so spannende Metamorphosen ertragen hat zu beschreiben. Dieses Startup wurde von uns von Grund auf auf der Basis von Ruby on Rails erstellt. In der MVP-Phase war noch nicht ganz klar, was aus dieser Anwendung wird, außerdem mussten die Investoren schnell eine Funktionalität schaffen, um das Projekt zu demonstrieren. Aus diesem Grund wurde das Projekt zunächst auf jQuery geschrieben.
Mit der Zeit wurde die Codebasis erweitert und die Funktionalität wurde kompliziert. Infolgedessen wurde die Situation fast kritisch. Jeder neue Teil der Funktionalität nahm mehr und mehr Zeit in Anspruch, insbesondere wenn eine Integration mit bereits bestehenden Teilen der Anwendung erforderlich war. Es war an der Zeit, über den Einsatz eines Tools aus der modernen Welt des Frontends nachzudenken.
Aus der Sicht eines Frontend-Entwicklers konzentriert sich das Framework von Ruby on Rails auf das Schreiben einer monolithischen Anwendung mit statischen Seiten, deren Code im Frontend „vernäht“ ist. Man kann sagen, dass es eine festgelegte Rails-Methode des Frontend-Schreibens gibt, die für die Erstellung eines Client-Teils in einer Anwendung beliebiger Komplexität ausgelegt ist, aber die Wege zur Erreichung der Ziele sind für einen gewöhnlichen Frontend-Entwickler nicht üblich. Die Situation ändert sich grundlegend, während VueJS in Rails für das Projekt verwendet wurde, aber lassen Sie uns dies der Reihe nach erzählen.
Natürlich gibt es eine Fülle von Methoden für Manipulationen mit Frontend-Code innerhalb des Rails-Monolithen. Es ist möglich, Teile der Seite ohne Reset dynamisch zu aktualisieren, Daten vom Server zu laden, einen CSS- und JS-Code zu verarbeiten und generell alle Aufgaben zu erledigen. Um jedoch mit der Zeit Schritt zu halten, ist all dies für einen Frontend-Entwickler eher mit Hacks vergleichbar. Sie bringen mehr Schwierigkeiten bei der Entwicklung mit sich und können in der Zukunft negative Folgen haben. Was ist also der Grund für die Verwendung von Hacks aus der Welt der Rails-Anwendungen, wenn es eine etablierte Praxis für das Schreiben von Kundencode gibt?
Glücklicherweise erlaubte uns dieser Entwicklungsansatz, ohne ernsthafte Konsequenzen auf VueJS zu migrieren. Es ist wert, direkt zu erwähnen, dass ein Client-Teil des Projekts sich nicht die endlosen unverständlichen Spaghetti-Code darstellen. In der Anfangsphase haben wir die besten Praktiken der Codeaufteilung angewandt, so dass das Projekt aus separaten unabhängigen Modulen bestand. Jedes von ihnen war für die UI-Komponente zuständig und konzentrierte darin einen Teil der Geschäftslogik, die eine Interaktion über eine klare API ermöglicht. Außerdem wurde dem Schreiben von qualitativem CSS unter Verwendung der BEM-Methodik viel Aufmerksamkeit gewidmet, da CSS in der Produktivität der meisten Webanwendungen einen sehr geringen Stellenwert hat. Aber auch intelligentes und regelmäßiges Refactoring konnte den Code nicht vor den Problemen der schwierigen Projekte retten, die auf Low-Level jQuery basieren.
Die Frage ist, dass man bei der Erstellung einer beliebigen Webanwendung auf imperative Weise früher oder später an einen Punkt gelangt, an dem man Schritt für Schritt sein eigenes Frontend-Framework erstellt. Wenn für große Projekte, die ein stabiles Einkommen bringen, das Schreiben eigener Tools eine akzeptable Option ist, dann wird es für sich dynamisch entwickelnde Start-ups zu einem Stolperstein. Jeder einzelne Teil der Funktionalität wird dadurch unzuverlässig, das Schreiben des Codes nimmt katastrophal viel Zeit in Anspruch. Darüber hinaus werden Änderungswünsche für bereits bestehende Funktionen zu einem echten Problem für den Entwickler und für die festgelegten Fristen. In Anbetracht all dieser Faktoren ist die Verwendung eines guten Frontend-Tools ein wesentlicher Punkt.
Warum hat man sich für VueJS entschieden? Eigentlich muss jedes Web-Entwicklungstool weise und individuell für das Projekt ausgewählt werden, aber nicht unter Berücksichtigung von Trends oder schönen Namen. Deshalb haben wir uns für VueJS entschieden. Dieses Tool wird zwar immer beliebter, ist aber nicht modisch und „progressiv“. So wie React, das die meisten Entwickler nur benutzen, um es zu benutzen, und die meisten Gründer von Startups es fordern, nur weil alle darüber reden.
VueJS ist perfekt für das Schreiben von Frontend-Code in Rails die Anwendung, es ist viel besser als jedes andere Framework.
VueJS ist unprätentiös, es braucht keinen Code Bundler oder andere Tools. VueJS kann einfach mit der Seite als jQuery verbunden werden, und beginnen, auf einmal zu verwenden, ohne irgendwelche Workarounds. Außerdem erlaubt VueJS das Umschreiben eines bestehenden Projekts mit einem modernen Frontend-Tool mit überraschender Geradlinigkeit. Es ist in der Lage, dies Schritt für Schritt zu tun, ohne Bedingungen zu brechen, ohne die Zuteilung des Budgets für die Migration vorzusehen und ohne das gewohnte Tempo der Produktentwicklung zu unterbrechen. Übrigens, das angekündigte React kann diese Aufgaben nicht bewältigen. Die Migration mit jQuery auf React wird für die Entwickler problematischer und für das Budget trauriger sein. Daher bleiben leider viele Projekte mit einer geringen Produktivität und einem unübersichtlichen Code bestehen. Aber es gibt bereits VueJS, das übrigens produktiver ist als die Konkurrenten, also warum fangen wir nicht schon heute an, es zu benutzen?
Was haben wir mit dem Wechsel von jQuery zu VueJS erreicht? Zunächst einmal hat die Erstellung der Funktionalität um ein Vielfaches weniger Zeit in Anspruch genommen, und der Code hat gleichzeitig einen Quantensprung in der Qualität gemacht. Außerdem haben wir eine produktive und reaktionsfähige Webanwendung erhalten, die bequem zu bedienen ist, und, wie wir wissen, je mehr zufriedene Benutzer, desto mehr steigende Umsätze.Ein Frontend-Code hat endlich eine stabile Architektur erreicht, mit der es bequem ist, zu arbeiten, zu unterstützen und Änderungen vorzunehmen, wenn nötig. Und das Wichtigste ist, dass die Verwendung von VueJS hat es erlaubt, das Tempo der Entwicklung auf dem vorherigen Niveau zu halten, ohne Mittel von Investoren für die Verbesserung der Code-Basis zu verbringen. Zweifeln Sie noch, ob es sich lohnt, VueJS zu verwenden?
Zusammenfassend kann man sagen, dass VueJS die optimale Wahl für das Schreiben von Frontend-Code in einer Webanwendung im Jahr 2017 ist, insbesondere bei der Arbeit mit Ruby on Rails. Es ist in der Lage, alle geschäftlichen Herausforderungen für das Projekt zu lösen, es gibt die Möglichkeit, moderne hochproduktive Frontend zu schreiben und auch, dank der Einfachheit, ermöglicht es, weniger Geld für die Entwicklung zu verbringen. Außerdem ist VueJS sowohl für kleine Startups, die nur erste Schritte machen, als auch für große, hochbelastete Projekte mit einem schwierigen Client-Teil der Anwendung perfekt geeignet. Nun, lassen Sie uns beginnen, über VueJS zu schreiben?