
Rails Engines & modulare Apps
Mountable Engines, isolated Engines, Namespacing, gem-basierte Architektur
1Was ist eine Rails Engine?
Was ist eine Rails Engine?
Antwort
Eine Rails Engine ist eine miniaturisierte Rails-Anwendung, die innerhalb einer Host-Anwendung gemountet werden kann. Sie ermöglicht das Teilen von Code (models, controllers, views, routes) zwischen mehreren Anwendungen oder das Erstellen isolierter und wiederverwendbarer Funktionen. Gems wie Devise, Sidekiq Web UI und ActiveAdmin sind Beispiele für beliebte Engines im Rails-Ökosystem.
2Welcher Befehl wird verwendet, um eine neue mountable Rails Engine zu generieren?
Welcher Befehl wird verwendet, um eine neue mountable Rails Engine zu generieren?
Antwort
Der Befehl rails plugin new mit der Option --mountable generiert eine vollständige Engine mit eigenem namespace, isolierten routes und Ordnerstruktur. Die Option --mountable erstellt eine Engine, die vollständig von der Host-Anwendung isoliert ist, im Gegensatz zu --full, das eine nicht isolierte Engine generiert, die den namespace der Hauptanwendung teilt.
3Was ist der Hauptunterschied zwischen einer --mountable Engine und einer --full Engine?
Was ist der Hauptunterschied zwischen einer --mountable Engine und einer --full Engine?
Antwort
Eine --mountable Engine ist vollständig isoliert mit eigenem namespace (module), eigenen helpers und routes, die unter einem konfigurierbaren Präfix isoliert sind. Eine --full Engine teilt den namespace der Host-Anwendung, was Namenskonflikte verursachen kann. Die Isolation der mountable Engine stellt sicher, dass die Klassen und routes der Engine den Namensraum der Hauptanwendung nicht verunreinigen.
Wie mountet man eine Rails Engine in der routes.rb-Datei der Host-Anwendung?
Welchen Zweck hat die isolate_namespace-Direktive in einer Rails Engine?
+15 Interview-Fragen
Weitere Ruby on Rails-Interviewthemen
Ruby-Grundlagen
Objektorientierte Programmierung in Ruby
Rails-Grundlagen
Routing & Controllers
ActiveRecord-Grundlagen
Views & ERB-Templates
ActiveRecord-Assoziationen
Fortgeschrittene ActiveRecord-Abfragen
Rails-Formulare
Authentifizierung & Autorisierung
Moderne Asset Pipeline & Frontend
Rails API-Modus
Testen mit RSpec
ActiveJob & Background Jobs
ActionCable & WebSockets
ActionMailer
ActiveStorage
Caching-Strategien
Fortgeschrittene Migrationen
Performance-Optimierung
Rails Design Patterns
Ruby-Metaprogrammierung
Rails-Sicherheit
GraphQL mit Rails
Deployment & Produktion
Monitoring & Logging
Rails-Upgrade-Strategien
Meistere Ruby on Rails für dein nächstes Interview
Zugang zu allen Fragen, Flashcards, technischen Tests, Code-Review-Übungen und Interview-Simulatoren.
Kostenlos starten