
Rails Engines e app modulari
Mountable engines, isolated engines, namespacing, architettura basata su gem
1Che cos'è un Rails Engine?
Che cos'è un Rails Engine?
Risposta
Un Rails Engine è un'applicazione Rails in miniatura che può essere montata all'interno di un'applicazione host. Consente di condividere codice (models, controllers, views, routes) tra più applicazioni o di creare funzionalità isolate e riutilizzabili. Gem come Devise, Sidekiq Web UI e ActiveAdmin sono esempi di engine popolari usati nell'ecosistema Rails.
2Quale comando si usa per generare un nuovo Rails Engine mountable?
Quale comando si usa per generare un nuovo Rails Engine mountable?
Risposta
Il comando rails plugin new con l'opzione --mountable genera un engine completo con il proprio namespace, route isolate e struttura delle cartelle. L'opzione --mountable crea un engine completamente isolato dall'applicazione host, a differenza di --full che genera un engine non isolato che condivide il namespace dell'applicazione principale.
3Qual è la principale differenza tra un engine --mountable e un engine --full?
Qual è la principale differenza tra un engine --mountable e un engine --full?
Risposta
Un engine --mountable è completamente isolato con il proprio namespace (module), i propri helpers e route isolate sotto un prefisso configurabile. Un engine --full condivide il namespace dell'applicazione host, il che può creare conflitti di nomi. L'isolamento del mountable engine garantisce che le classi e le route dell'engine non inquinino lo spazio dei nomi dell'applicazione principale.
Come montare un Rails Engine nel file routes.rb dell'applicazione host?
A cosa serve la direttiva isolate_namespace in un Rails Engine?
+15 domande da colloquio
Altri argomenti di colloquio Ruby on Rails
Fondamenti di Ruby
Programmazione orientata agli oggetti in Ruby
Fondamenti di Rails
Routing & Controllers
Fondamenti di ActiveRecord
Views e template ERB
Associazioni ActiveRecord
Query ActiveRecord avanzate
Form Rails
Autenticazione e autorizzazione
Asset Pipeline moderno e frontend
Modalità API di Rails
Test con RSpec
ActiveJob & Background Jobs
ActionCable & WebSockets
ActionMailer
ActiveStorage
Strategie di caching
Migrazioni avanzate
Ottimizzazione delle prestazioni
Design Pattern in Rails
Metaprogrammazione in Ruby
Sicurezza in Rails
GraphQL con Rails
Deployment e Produzione
Monitoring & Logging
Strategie di upgrade di Rails
Padroneggia Ruby on Rails per il tuo prossimo colloquio
Accedi a tutte le domande, flashcards, test tecnici, esercizi di code review e simulatori di colloquio.
Inizia gratis