Quarta-feira, 20 de setembro de 2006 às 11h22

Porque Ruby on Rails?

Olá! Primeiramente gostaria de agradecer por esta oportunidade de ser colunista desse grande site, e falar um pouco sobre tecnologia e desenvolvimento web com produtividade, e de especial minha amada que direta e indiretamente sempre me apóia.

Eu sempre fui ligado, quando se fala em produtividade. Venho de um time de "ferramentas" geradoras de códigos e quadradas onde muitas empresas que estão iniciando com desenvolvimento web ou migrando suas aplicações desktop se perdem por escolher uma ferramenta cujo o nome é interessante ou que aparentemente seja pura "magia" dois ou três cliques e logo sai do outro lado um sistema completo como um ERP ou um CRM, fácil não?

É aqui que gostaria de falar de algo que está acontecendo no desenvolvimento web, a poucos anos atráz um cara chamado David Heinemeier Hansson conseguiu extrair de uma das suas aplicações o Framework com nome de Rails, estranho né? Pois partiu de um sistema e não framework, depois o sistema e você já ouviu falar de Rails? Se não ouviu "ainda" esta é uma ótima hora para conhecer e ver o que você ou sua empresa ganha com isso tudo.

Em 1995 um cara chamado Yukihiro 'Matz' Matsumoto criou uma linguagem chamada Ruby, uma linguagem dinâmica (isso faz parte produtividade), onde tudo pode ser alterado em tempo real e totalmente orientada a objetos. O legal é que tudo pode ser considerado um objeto, ou quase tudo... os métodos de uma classe não.

O Rails, ou mais conhecido como Ruby on Rails, ou ainda RoRé, é um "meta-framework" desenvolvido em Ruby e de código aberto assim como Ruby. De cara leva em sua arquitetura o design pattern "MVC" (Model-View-Controller). O molde MVC oferece vantagens significativas no desenvolvimento de aplicativos, através da separação das camadas, possibilitando implementar com maior facilidade e clareza questões programáticas importantes como a persistência de dados, controle de segurança, comunicação em rede e fluxo de visualização.

O Rails ainda contém 5 outros frameworks:

Active Record;

Action Pack;

Action Mailer;

Active Support;

Active WebServices.

Cada um destes "mini-frameworks" está disponível viagem (sistema de gerenciamento de pacotes para Ruby), mas todos eles são baixados e instalados automaticamente quando se instala o gem do Rails .

Um dos grandes problemas de vários frameworks que vejo por aí no mercado é sua configuração complexa baseados em arquivos xml´s, isso deixa em MUITO a desejar para quem esta aprendendo, tornando a curva de aprendizado maior. Em Rails isso praticamente não existe pois a idéia é que no lugar de configurações existem somente convenções facilitando a configuração do banco de dados e outros.

Outro ponto forte do rails é o DRY (Don't Repeat Yourself, Não se repita) é o conceito por trás da técnica de definir nomes, propriedades e códigos em somente um lugar e reaproveitar essas informações em outros. Por exemplo, ao invés de ter uma tabela Produtos e uma classe Produto com uma propriedade um método "acessador" (getter) e um "mutador" (setter) para cada campo na tabela tem-se apenas no banco de dados.

As propriedades e métodos necessários são "injetados" na classe através de funcionalidades da linguagem Ruby. Com isso, economiza-se tempo, já que não é necessário alterar a tabela, o "bean", o "form bean", o "local home", o "home", o "session", etc... Alterando apenas no banco de dados, tudo o que se baseia nessas informações são atualizadas automaticamente.

Bom, já ta na hora de colocar a mão na massa, correto? A partir de agora teremos muitas máterias práticas passo a passo, ensinando desde a instalação Windows/Linux até criar um caso real e de uso em produção de um sistema de verdade. Vamos aprender muito conceito e arquitetura do Ruby e muita coisa prática de Rails. Conto com você nas próximas máterias, grande abraço e... sucesso!

Links relacionados:

http://www.rubyonrails.com.br
http://pt.wikipedia.org/wiki/MVC

13 comentários

 Leandro Vieira
20/09/2006 12h40

Olá Carlos

Muito bacana a máteria. A expressão do momento sem dúvida é o MVC, um verdadeiro buzzz no desenvolvimento web. Não trabalho com o Ruby e sim com o PHP, e devido o PHP5 o MVC também começou a ser o buzzz do momento nessa última linguagem.

Estarei na ansiedade pelas próximas matérias.

Um abraço.

 Felipe Alencar Magalhães
20/09/2006 14h43

Muito interessante

Já tinha ouvido falar d RoR e até li um pouco (muito pouco, não vou mentir).
Gostei da matéria, realmente produtividade é o que há. Em ColdFusion também há todo o tratamento de MVC como o bam-bam-bam da parada e não é por menos.
As linguagens pra web parece que chegaram em sua maturidade e estão cada vez mais robustas e exigindo mais dos programadores...
Tá de parabens meu caro!
Fico no aguardo de mais materias

 Charles Schaefer
20/09/2006 15h27

Ótima notícia

Cara,há um certo tempo venho querendo aprender ruby. Tudo bem, nos últimos tempos ruby tem se tornado uma estrela da web, devido à sua facilidade, e, agora com o rails, sua versatilidade. Mas como diria um desses gurus americanos "if business like, you love it". E agora com a notícia de que vc vai nos dar umas aulinhas fiquei até empolgado....Aguardo a próxima matéria anciosamente....

 Micox JCG
21/09/2006 11h15

Não gostei

Olá.
Se seu objetivo foi explicar Ruby on Rails para iniciantes nela, gostaria de dizer que não alcançou. Leve isto como uma crítica construtiva. Entrei achando que iria passar a entender o tal ruby, mas não mudou nada na minha cabeça. Faltou didática. Vc fala como se estivesse falando só pra quem entende do Ruby (acho).
Espero melhoras nos próximos artigos. Estarei aguardando. To doido pra saber mais desse ruby.

 Nilton Andrade
21/09/2006 11h29

hi :D

Micox... no meu ponto de vista o autor quis primeiramente fazer uma apresentação dele como colunistas aqui... como ele mesmo disse que virá muitos exemplos e artigos daqui para frente.

Gostei do artigo :)
T

 Carlos Eduardo
26/09/2006 19h48

Muita coisa nova

Olá obrigado a todos que deixaram um comentário, as próximas máterias estão vindo muita coisa boa, desde a instalação passo a passo, até mesmo criar uma aplicação real usando 100% ajax, aguardem...

 alexandre nogueira
29/09/2006 15h28

Também não gostei

Nunca tinha ouvido falar no tal Ruby e acredito que fiquei sem entende-lo. A matéria não explica nada direito.

 Marcelo .
04/12/2006 09h47

Outro que não gostou

O autor além de ter um português horrível, não sabe explicar nada sobre o tema. Sinceramente a IMasters esta com péssima qualidade. Antes de dispor artigos na Internet, o Portal deveria impedir que pessoas, como o autor desse artigo, assassinassem a gramática. Exemplos como esse são uma desmoralização para as pessoas que vivem de tecnologia. Só peço mais responsabilidade com a nossa classe.

 Charleno Queiroz Pires
05/12/2006 00h27

Outro que não gostou do outro que não gostou

Rpz, queria ver se o Marcelo Farias, conseguiria se propor a escrever artigos mensais, semanais, seja como for. Queria saber se ele se propunha a perder seu tempo estudando e tentando ajudar as pessoas, mostrando novas tecnologias e tudo o mais. Tenho certeza que não conseguiria, mesmo com todo o seu poder absoluto de gramática. É interessante como as coisas são, uma pessoa resolve emitir opinião, mostrar as pessoas novas tecnologias, novos caminhos, novos rumos da computação, e as pessoas se quer olham pro conteúdo, analisam gramática, sendo que a mesma vem sendo massacrada pela web, pela nova forma de comunicação. Vai crescer!!! Já ouviu falar em linguística?

 Oberaldo Büll Junior
05/12/2006 00h47

Tomando o mercado

Muito bom o artigo Carlos, atualmente, o RoR está tomando uma grande fatia do mercado, é muito importante artigos assim para nos ajudar a conhecer melhor a ferramenta em que iremos desenvolver!

 tiago santos
07/12/2006 17h55

Materia repetida!

Além de seus artigos serem fracos já existem publicados na internet..favor acrescentar um pouco a comunidade ruby porque isto não esta ajudando nimguém!

 Charles Babagge
27/01/2007 12h09

Poxa Vida.

Além do cara se auto promover e não ter didática, ele está conseguindo a façanha de não acrescentar nada para a comunidade RoR. Olha Imasters, vamos avaliar melhor os colunistas, por favor !.

 Ken Awamura
29/01/2009 18h49

Porque Nao Ruby on Rails?

1. Primeiramente e mais importante, pq encapsula demais a linguagem ruby tornando muito obscuro em determinados momentos, sao os Railsisms que vira uma pseudo ling em cima do ruby e como consequencia se vc soh faz Rails e derrepente quer des. uma ap. desktop com ruby, vai ver q seu ruby nao eh tao ruby assim

2. Monolitico e full-stack: isso tem pros e cons, mas na minha opiniao tem mais contras.

3. Com o merge com o frwrk Merb, vai ficar mais modular, indo contra a sua propria filosofia e do Merb tbm, e se nao for bem feito o merge ... vai ter mais problemas ... nao vai ser tao optionated sw como pretendia ...

4. Excesso de Rails Magic: 'huh, funca, mas nao sei como!'

5. Tres tipos Rounting: simple, named e restfull ... seria legal se eu pudesse desacoplar os que nao quero utilizar (mas tbm tem suas vtgs)

6. Forca MVC, nem sempre precisamos de MVC ... tbm vai mudar com o merge com o merb

7. Bloated framework ... gosto de frwrks enxutos

Cancelar resposta

Qual a sua opinião?

Faça login abaixo ou cadastre-se rapidamente.


Sobre o Autor
Carlos Eduardo é um grande entusiasta de linguagens que provêem produtividade aliada a diversão. Trabalha com informática há 7 anos, e como desenvolvedor há 4 anos. Hoje é proprietário da e-Genial Soluções Inteligentes, empresa dinâmica que provê Soluções em desenvolvimento Web. Ministra treinamentos de desenvolvimento web em plataformas Jee e Ruby on Rails para empresas e orgãos públicos.

2001 - iMasters FFPA Informática Ltda - Todos os direitos reservados.