/ 25.Jan.2008 at 08:31pm
Update 28/01: Parece que eu e o James Golick estávamos pensando a mesma coisa. Ele acabou de gravar um screencast sobre seu outro excelente plugin “attribute_fu” e eu gravei o “resource_controller”. Ele acabou de postar ambos screencasts no blog dele. Dêem uma olhada.
Esta é a segunda tentativa de fazer um screencast (longo, 100Mb e 1 hora). Acho que meu último O Primeiro Screencast de Rails 2.0 foi razoavelmente bom, mas muito muito longe de ser suficiente. Eu agradeço a todos que viram e que ajudaram a divulgar uma das peças de maior sucesso que já fiz.
Eu queria explorar conceitos de Restful Rails no screencast. Antes de mais nada, continuo recomendando o excelente tutorial do Geoffrey Grosenbach no Peepcode. Meu screencast não tem perto do nível de qualidade dele. Mas por outro lado como eu sei que muita gente não entende inglês suficiente bem para isso, resolvi gravar dois vídeos: uma versão em inglês e outra diferente em português com uma introdução maior aos conceitos do Restul do Rails.
E eu enfatizo “Restful do Rails” porque muita gente torce o nariz quando se fala em Rails e REST na mesma frase. A isso eu respondo: favor me indicar uma implementação melhor no Rails. Enquanto só disserem “não é tão bom quanto poderia” e cruzar os braços, para mim, isso e nada é a mesma coisa. A implementação do Rails é boa o suficiente para qualquer projeto. O objetivo do Rails nunca foi 100%, sempre foi 80%, essa é a filosofia. Vivam com isso.
Este screencast na verdade foca no plugin resource_controller do James Golick, um dos plugins mais interessantes que já vi. É uma dessas grandes idéia que – quem sabe – talvez encontre lugar no Rails Core um dia, da mesma forma como as idéias do Sexy Migrations foram incorporadas no Rails 2.0.
O conceito é que agora tratamos as ações de um controller de uma maneira mais ou menos padronizada (pela abstração dos verbos HTTP), e isso poderia perfeitamente se refatorada para longe do dia-a-dia de desenvolvimento. Então, em vez de ter o scaffold criando um monte de código repetido em cada controller, por que não ter um controller vazio – e ainda assim totalmente funcional -, para começar?
Outra idéia esperta foi criar helpers dinâmicos para rotas nomeadas nas views. Assim você pode mover suas views pelo projeto, e até reusá-los em diferentes seções sem ter que ficar copiando e colando diferentes rotas nomeadas entre elas. Isso é particularmente útil em controller polimórficos e rotas com namespace como mostro nesse vídeo
Agora estou disponibilizando este screencast pelo Vimeo, Veoh e RapidShare. Mas não sei se é a melhor maneira. Infelizmente meu blog não tem banda para suportar um download de 100Mb (e outro de 70Mb na versão em inglês). Então, se alguém tiver uma idéia melhor de onde outro host (onde todo mundo possa ver), sou todo ouvidos.
18 Comments
algo como o http://www.esnips.com/, e afins, nao poderia ser ??
edipo / 25.Jan.2008 at 08:47pm
qto a hospedagem, ou você assina o site5 (1tb de transferencia por 7 dolares) ou poe o vídeo no rapidshare.
marcus derencius / 25.Jan.2008 at 09:17pm
opa só de ter o plugin resource_controller já ta valendo
A versão em português ta com bug, só upou um minuto.
Em inglês a imagem ficou meio estranha, o audio ta ótimo.
Nos tempos em que eu upava material raro do pink floyd o google se dava melhor quando eu ja enviava em mp4, acho que assim a engine nao recompactava o arquivo.
Rapidshare é uma boa apesar de ficar meio subversivo eheheheh
lauro / 25.Jan.2008 at 09:37pm
Acabei de colocar no RapidShare (link no artigo). Vamos ver se melhora :-)
akitaonrails / 26.Jan.2008 at 12:26am
Estou baixando e vou liberar ele no meu disco virtual do terra.
Assim que eu tiver OK informo o link aqui.
ramon soares / 26.Jan.2008 at 01:35am
Tentei ver a versão em inglês no Google Video mas, realmente, a imagem fica bem prejudicada. A versão em português acabou sendo “cortada” aos 1:06 de vídeo.
Baixei agora o arquivo do RapidShare. Está perfeito.
lucas húngaro / 26.Jan.2008 at 02:33am
Valeu Akita, mais oportuno impossível!
cássio / 26.Jan.2008 at 09:47am
Conforme prometido tai ai o link e a senha pra baixar o arquivo do meu disco virtual do terra.
LINK: http://discovirtual.terra.com.br/vd.cgi?+_wi=1201353259-15153-10201294&_we=13
SENHA: 1BEC399B
ramon soares / 26.Jan.2008 at 11:16am
Peguei pelo rapidshare, tanto o áudio como a imagem estão ótimos, inclusive o áudio ta melhor que do primeiro screencast.
lauro / 26.Jan.2008 at 02:06pm
Fábio, realmente muito interessa esse plugin e também esclareceu minhas dúvidas sobre o conceito Restful no Rails.
Aproveitando o assunto sobre screencasts, também estou lançando o primeiro no meu blog, está simplório pois é uma pequena introdução de como iniciar no Rails, da uma olhada depois!
abraços
samir / 26.Jan.2008 at 08:44pm
[OFF Topic] Hehehehe. Akita, olha o “fácil” na sua URL. Tá usando o sluggable?
leandro n. camargo / 27.Jan.2008 at 04:50pm
Seria possível fornecer o link dos screencasts anteriores do microblog ?
Abraços,
Heronim
pirata.dabaixada@gmail.com / 27.Jan.2008 at 09:33pm
Akita, Parabéns pelo tutorial, muito esclarecedor o conceito RESTful e muito boa explicação sobre o plugin resource_controller.
Mas eu tenho uma duvida sobre Nested Routes. Quando tenho mais de duas rotas aninhadas, como fica no rails 2.0 onde utiliza :has_many
como ficaria no caso dessa url categories/1/posts/1/comments?
Teria que ficar como no rails 1.2? onde utiliza blocos
Teh mais.
estevão lucas / 27.Jan.2008 at 09:47pm
Excelente Akita. Este plugin mata uma dúvida que eu andava tendo, sobre DRY…ele evita aquela pancada de código igual pra tudo que é controller.
carlos aquino / 28.Jan.2008 at 05:43am
parabéns, esse screencast ficou show de bola.
alessandro / 28.Jan.2008 at 01:44pm
Teria como rotear as ações restful eliminando as rotas padrão?
Por exemplo:
map.connect “admin/noticias/nova”, :controller => “admin/noticias”, :action => “new” map.namespace :admin do |admin| admin.resources :noticias end
Assim adicionaria uma nova rota substituindo “new” por “nova”, mas a rota “new” ainda funcionaria. Teria um meio de eliminar a “new”?
É que fica estranho essas urls em inglês pra um aplicativo em português.
fernando / 29.Feb.2008 at 05:05pm
Também gostaria de ter acesso ao screencast do microblog.
luis / 09.Mar.2008 at 03:13pm
Akita, o video baixado pelo rapidshare não tá abrindo no linux de jeito nenhum. Tentei até com o vlc e não abriu. Tem algum problema com ele?
Abraço.
sylvestre mergulhão / 27.Jun.2008 at 11:48am
Leave a Comment