- Rails 8 ist für kleine Projekte und Einzelentwickler äußerst nützlich
- Mit dem aktuellen Startleitfaden lässt sich eine Produktionsanwendung mühelos erstellen
- Durch die Verbesserungen in SQLite ist eine starke Datenbankumgebung ohne zusätzliche Server möglich
- Mit den integrierten Funktionen für Continuous Integration (CI) und Authentifizierungs-Generator werden die Entwicklungseffizienz und Sicherheit verbessert
- Durch den einfachen Bereitstellungsweg über Kamal lässt sich der Betrieb von Services schnell und sicher realisieren
Überblick
- Basierend auf der Erfahrung mit Rails 8 ist es ein ausgezeichnetes Web-Framework für kleine Projekte oder Einzelentwickler
- Über schnelles Bereitstellen, effizientes Deployment und eingebaute Module werden deutliche Produktivitätsvorteile gegenüber konkurrierenden Frameworks sichtbar
Qualität des aktuellen Guides
- Der aktuelle Guide Getting Started with Rails ist so aufgebaut, dass auch Einsteiger eine Produktionsanwendung erstellen können
- Auch wenn die Ruby-Installation noch komplex ist, kann man mit der Anleitung eine robuste Anwendung mit Authentifizierung, Caching, Rich Text, CI und Datenbank aufbauen
- Seine Stärke liegt nicht in einem simplen ‚Hello World‘, sondern in Grundbausteinen und Funktionen auf realem Service-Niveau
- Für Einsteiger, die mit Rails nicht vertraut sind, ist es ein optimaler Einstiegspunkt
SQLite reicht
- SQLite ist grundsätzlich ein starkes Werkzeug, aber es war bisher nicht einfach, es für Produktionszwecke bereitzustellen
- Früher waren zusätzliche Schritte wie das Installieren weiterer Gems nötig; mit Rails 8 ist es jetzt ohne zusätzlichen Aufwand stabil in der Produktionsumgebung nutzbar
- Weder PostgreSQL noch ein zusätzlicher Server sind nötig, und mit Solid Cache wird auch kein Redis-Server benötigt
- Mit nur Rails und SQLite lässt sich ein Service betreiben, wodurch einfache Einrichtung und Betrieb sowie Kostenersparnis optimiert werden
Einfache Continuous Integration (CI)
- In Rails 8 ist eine standardmäßig eingebundene CI-Konfiguration enthalten, sodass bereits nach dem ersten Commit eine CI-Fehlermeldung eintreffen kann
- GitHub Actions ist ohne zusätzliche Konfiguration integriert und es stehen 2.000 kostenlose Ausführungsminuten pro Monat zur Verfügung
- Für Einzelentwickler ist das ein ziemlich großzügiges Kontingent
Einführung des Authentifizierungs-Generators
- Früher galten Authentifizierungs-Gems wie Devise als stark, wirkten jedoch aufgrund ihrer Komplexität bei der Einrichtung für Einsteiger oft schwierig
- Rails 8 führt einen einfachen Authentifizierungs-Generator ein, mit dem man über die Konsole einfach bestehende Nutzer hinzufügen und so den Login-Fluss umsetzen kann
- Der generierte Code ist einfach und leicht lesbar, sodass ihn auch Einsteiger gut verstehen können
Schnelle und einfache Bereitstellung mit Kamal
- Kamal übernimmt den Deploy-Prozess; mit nur minimalen Anpassungen an
deploy.yml und der Befolgung der Anleitung kann die App sofort in einer SSL-Umgebung gestartet werden
- Es ist ein schnelleres Web-App-Deployment-Erlebnis als das Anbinden von SSL an GitHub Pages
- Die Kombination aus CI und einfacher Bereitstellung ist ein besonders deutlicher Vorteil von Rails 8
- Selbst allein mit dem Einstiegsleitfaden lässt sich eine Entwicklung auf Basis von aktuellem Best Practice erleben
Fazit
- Rails ist weiterhin ein starkes und sich weiterentwickelndes Framework
- Wenn Sie dieses Jahr ein neues Projekt planen, lohnt es sich, mit Rails 8 zu entwickeln
2 Kommentare
In letzter Zeit sehe ich so viele Beiträge zu SQLite, dass es inzwischen schon fast alles auf SQLite geworden ist.
Müsste man das als eine Wiederbelebung des Klas-sischen bezeichnen?
Hacker News Kommentar
pragma user_versionwerden typsicherer DB-Code und Migrationen einfacher. Für SQLite reicht es bei mir oft, inmain.gozweiimport-Zeilen einzufügen. Mit der Go-Standardvorlage reicht die Frontend-Textverarbeitung, und mitembedbindet man statische Assets leicht ins Binary ein. Das Deployment ist ebenfalls simpel:go buildund dann nur das Binary verschieben. Die Code-Generator-Tools machen die Go-Backend-Entwicklung dadurch sehr schnell und bequem.batteries includedund sehr zuverlässig. Der Wechsel erfordert etwas ein OOP- und DI-Denken, ist aber für erfahrene Entwickler kein großes Problem.NOT NULL-Constraint hinzufügen will, muss man die ganze Tabelle über eine temporäre Tabelle neu schreiben.ADD CONSTRAINTnoch PL-Sprachen oder einfache Stored Procedures, daher braucht man in statisch typisierten Sprachen ständig den Umweg über die Host-Sprache – das ist umständlich.