Reutilização de código em aplicações Rails: Plugins, Gem e Engines
-
Upload
juan-maiz -
Category
Technology
-
view
1.298 -
download
1
description
Transcript of Reutilização de código em aplicações Rails: Plugins, Gem e Engines
![Page 1: Reutilização de código em aplicações Rails: Plugins, Gem e Engines](https://reader036.fdocuments.net/reader036/viewer/2022082703/55731f8dd8b42aae7b8b4bf6/html5/thumbnails/1.jpg)
Reutilização de Código com Ruby on Rails
Rodrigo Urubatan
![Page 2: Reutilização de código em aplicações Rails: Plugins, Gem e Engines](https://reader036.fdocuments.net/reader036/viewer/2022082703/55731f8dd8b42aae7b8b4bf6/html5/thumbnails/2.jpg)
Sobre Urubatan
Trabalho com desenvolvimento desde 1997, já desenvolvi sistemas em diversas linguagens, como Delphi, C, C++, PHP, ASP, ColdFusion, Assembly, Leather, Java e Ruby.
Atualmente trabalho com pesquisa e desenvolvimento na HP, utilizando principalmente Java, e com Ruby em outros projetos e cursos.
Alem de ser o autor do livro "Ruby On Rails: Desenvolvimento fácil e Rápido de aplicações web"
![Page 3: Reutilização de código em aplicações Rails: Plugins, Gem e Engines](https://reader036.fdocuments.net/reader036/viewer/2022082703/55731f8dd8b42aae7b8b4bf6/html5/thumbnails/3.jpg)
Reutilizar tudo?
Não!
![Page 4: Reutilização de código em aplicações Rails: Plugins, Gem e Engines](https://reader036.fdocuments.net/reader036/viewer/2022082703/55731f8dd8b42aae7b8b4bf6/html5/thumbnails/4.jpg)
O que vale a pena reutilizar?
• Sempre que você escrever o mesmo código mais de duas vezes
• Sempre que algo for necessário em mais de um projeto
• Sempre que você puder vender parte do código
![Page 5: Reutilização de código em aplicações Rails: Plugins, Gem e Engines](https://reader036.fdocuments.net/reader036/viewer/2022082703/55731f8dd8b42aae7b8b4bf6/html5/thumbnails/5.jpg)
Projeto Exemplo
• Sistema de gerenciamento de projetos• Código de Login igual a outras
aplicações• Código muito parecido em todos
os controladores• Alguns recursos dos modelos
poderiam ser generalizados
![Page 6: Reutilização de código em aplicações Rails: Plugins, Gem e Engines](https://reader036.fdocuments.net/reader036/viewer/2022082703/55731f8dd8b42aae7b8b4bf6/html5/thumbnails/6.jpg)
Criando um plugin Básico
• Compartilhando código dos controladores com outros projetos
• Reutilizando lógica de um Model (criando um plugin tipo “act_as”
![Page 7: Reutilização de código em aplicações Rails: Plugins, Gem e Engines](https://reader036.fdocuments.net/reader036/viewer/2022082703/55731f8dd8b42aae7b8b4bf6/html5/thumbnails/7.jpg)
Transformando um plugin em uma Gem
• O que é uma Gem
• Por que é mais fácil compartilhar utilizando uma Gem
• Como transformar um plugin em uma Gem
• Quais as vantagens
![Page 8: Reutilização de código em aplicações Rails: Plugins, Gem e Engines](https://reader036.fdocuments.net/reader036/viewer/2022082703/55731f8dd8b42aae7b8b4bf6/html5/thumbnails/8.jpg)
Compartilhando Views
• Compartilhando todo o código de login
• Introdução a Rails “Engine”
• Compartilhando Controladores
• Compartilhando Views
• Compartilhando Models
• Deixando ganchos para costumização
![Page 9: Reutilização de código em aplicações Rails: Plugins, Gem e Engines](https://reader036.fdocuments.net/reader036/viewer/2022082703/55731f8dd8b42aae7b8b4bf6/html5/thumbnails/9.jpg)
![Page 10: Reutilização de código em aplicações Rails: Plugins, Gem e Engines](https://reader036.fdocuments.net/reader036/viewer/2022082703/55731f8dd8b42aae7b8b4bf6/html5/thumbnails/10.jpg)
Referências
• Meu livro - http://livro.urubatan.com.br• Meu blog - http://www.urubatan.com.br• Ruby On Rails - http://www.rubyonrails.org• Ruby On Rails Brasil - http://www.rubyonrails.pro.br• RubyOnBr - http://www.rubyonbr.org/