Rails Flashcards
(36 cards)
Active Record
Facilita a interação com o banco de dados, mapeando tabelas para classes e objetos Ruby.
Active Record é uma parte importante do framework Ruby on Rails.
Action Pack
Lida com requisições web, roteamento, renderização de views e controllers.
Action Pack é responsável por lidar com o controle de requisições e respostas em uma aplicação Rails.
Action View
Renderiza templates e layouts para gerar a interface do usuário.
Action View é responsável por gerar a interface do usuário em uma aplicação Rails.
Action Mailer
Cria e envia e-mails de forma simples e eficiente.
Action Mailer facilita o envio de e-mails em uma aplicação Rails.
Active Support
Fornece utilitários e extensões para a linguagem Ruby, facilitando o desenvolvimento.
Active Support oferece diversas funcionalidades adicionais para o desenvolvimento em Ruby.
Action Cable
Permite comunicação em tempo real entre o servidor e o cliente, ideal para chats e atualizações ao vivo.
Action Cable é usado para implementar funcionalidades de comunicação em tempo real em uma aplicação Rails.
Active Job
Gerencia tarefas em background, como processamento de dados ou envio de e-mails em fila.
Active Job é útil para executar tarefas em segundo plano de forma eficiente em uma aplicação Rails.
Model (ActiveRecord)
Gerencia a interação com o banco de dados, mapeando tabelas para classes e objetos Ruby, facilitando a criação, leitura, atualização e exclusão de dados.
View (Action View)
Responsável por renderizar templates e layouts, gerando a interface do usuário que será exibida no navegador.
Controller (Action Controller)
Lida com as requisições do usuário, interagindo com o Model para obter dados e com a View para renderizar a resposta apropriada.
Routes (Action Dispatch)
Define como as URLs da aplicação são mapeadas para os Controllers e Actions correspondentes.
Helpers (Action View)
Métodos auxiliares que podem ser usados nas Views para realizar tarefas comuns, como formatação de dados ou geração de links.
Assets (Sprockets)
Gerencia arquivos estáticos como JavaScript, CSS e imagens, compilando e otimizando-os para melhorar o desempenho da aplicação.
Mailers (Action Mailer)
Permite enviar e-mails de forma fácil e eficiente, com suporte a templates e anexos.
Jobs (Active Job)
Gerencia tarefas em background, como processamento de dados ou envio de e-mails em fila, melhorando a performance da aplicação.
Cache (Active Support::Cache)
Armazena dados em memória ou em outros locais para acelerar o acesso a informações frequentemente utilizadas.
Internationalization (i18n)
Permite traduzir a aplicação para diferentes idiomas, adaptando-a a diferentes públicos.
Rack
Interface entre o Rails e servidores web.
Rack is the interface between Rails and web servers.
Action Cable
Comunicação em tempo real (WebSockets).
Action Cable enables real-time communication using WebSockets.
Action Text
Editor de texto rico (rich text).
Action Text is a rich text editor.
Active Storage
Upload e gerenciamento de arquivos.
Active Storage provides file upload and management capabilities.
Explique o padrão MVC e como ele é aplicado no Rails.
MVC separa a aplicação em Model (dados), View (interface) e Controller (lógica). No Rails, o Model é representado pelo ActiveRecord, a View pelo Action View e o Controller pelo Action Controller.
Exemplo: O Controller recebe uma requisição do usuário, o Model realiza operações no banco de dados e a View exibe o resultado na interface.
O que é o ActiveRecord e quais suas principais vantagens?
ORM que mapeia tabelas do banco de dados para classes Ruby, facilitando operações CRUD e abstraindo a linguagem SQL. Vantagens: produtividade, portabilidade e facilidade de manutenção.
Exemplo: O ActiveRecord permite definir associações entre modelos de forma simples e intuitiva.
Quais os tipos de associações entre modelos no Rails e como implementá-las?
belongs_to (pertence a), has_many (tem muitos), has_one (tem um), has_and_belongs_to_many (associação muitos para muitos). Implementadas com métodos específicos no modelo.
Exemplo: Um modelo de Usuário pode pertencer a um modelo de Grupo através de uma associação belongs_to.