|
||
|
|
| Conheça o Plugfeed | » Início » Programação » Ruby on Rails » Repensando a Web com Rails --> |
|
Avaliação:
![]() ![]() ![]() ![]() | Publicado em: 02/09/2006Repensando a Web com Rails
Fabio Akita Trabalho na área de informática, oficialmente, desde 1997 mas na realidade programo desde 1990. Portanto tive a oportunidade de desenvolver nas mais diversas plataformas. A partir de 2002 entrei para o mercado de consultorias SAP e desempenho papel de provedor de soluções principalmente para integração de sistemas em Java e SAP. Atualmente sou um grande entusiasta Ruby on Rails, acreditando ser esta a plataforma ideal para desenvolvimento de sistemas Web (tanto web sites quanto web applications). Escrevi o livro "Repensando a Web com Rails", pela editora Brasport em 2006.
Repensando a Web com Rails
Este é meu primeiro artigo neste site e fico contente com o convite para escrever sobre Ruby on Rails (RoR). Para quem não me conhece, sou Fabio Akita, consultor SAP, gerente de projetos PMP e entusiasta RoR. Escrevi o primeiro livro sobre RoR no Brasil. Vocês podem conhecer mais sobre o assunto no meu blog. Apesar desse assunto ser uma das coisas mais quentes e empolgantes no mundo de informática no exterior ainda é um assunto muito pouco discutido no Brasil. Os poucos lugares que discutem RoR por aqui recaem na falácia do "RoR VS J2EE", "RoR VS .Net", "RoR VS PHP", etc. Uma perspectiva interessante é observar que este ano aconteceram diversas convenções sobre RoR como Canadá on Rails, Ruby Kaigi Japan, RailsConf Chicago e RailsConf Europe. América do Norte, Europa e Ásia já embarcaram, por onde anda o Brasil? Em primeiro lugar é importante entender duas coisas: não existe nem nunca existirá tecnologia absoluta, por isso mesmo as décadas passam mas as discussões "X vs Y" continuarão. Qualquer dos lados sempre terá argumentos contra o outro. Em segundo lugar, um corolário: a intenção do RoR não é querer substituir todas as outras plataformas de desenvolvimento Web. Como consultor meu entendimento de qualquer problema é que existem múltiplas soluções. Cabe a nós, desenvolvedores, avaliarmos onde é melhor usar esta ou aquela combinação de tecnologias. Não devemos levar em conta apenas requerimentos técnicos, mas também as circunstâncias de negócio, disponibilidade de recursos, etc. Ruby é uma linguagem muito famosa no Japão, criada em 1993 por Yukihiro Matsumoto (Matz) com seu descontentamento com as linguagens dinâmicas da época, como Perl. Ruby nasceu para ser simples, dinâmico, puramente orientado a objetos. A partir de 2000 se tornou famoso no resto do mundo por causa do livro "Programming Ruby" de Dave Thomas. Rails é um framework de desenvolvimento Web construído sobre Ruby. Sua origem foi o descontentamento do dinamarquês David Heinemeir Hansson com os frameworks disponíveis em PHP ou Java, nos idos de 2004. Sua idéia era trazer o máximo de produtividade ao desenvolvedor sem sacrificar a qualidade do código e, principalmente, trazer qualidade de vida eliminandotarefas mundanas como configurar dezenas de arquivos de configuração só para conseguir fazer o aplicativo comecar a rodar. Rails é o que chamamos de um "full stack" ou seja, traz solução de ponta a ponta, desde a comunicação com o banco de dados até a camada de apresentação, passando por integração com e-mail, Web Services, Ajax e diversos outros recursos. Portanto, "Ruby" on "Rails" é o resultado do descontentamento de seus criadores com as respectivas tecnologias de suas épocas e o desenvolvimento de alternativas baseadas nas lições aprendidas até o momento. A história da computação é coalhada de exemplos semelhantes. Uma nova versão ou uma nova tecnologia costumam ser resultado do descontentamento com as atuais. O surgimento de uma nova tecnologia não significa que as anteriores precisam desaparecer. O melhor exemplo disso é o Fortran, a primeira grande linguagem imperativa, que existe em alguns nichos até hoje. Porém, o medo da substituição é inevitável. Algumas pessoas investiram anos de estudo e investimento para aprender soluções em PHP, Perl, Python, Java. Naturalmente cria-se uma aversão a coisas muito novas e muito promissoras como RoR. Porém, um desenvolvedor capaz tem em suas mangas a capacidade de se adaptar rápido. Não existe um programador que se possa chamar de "sênior" e que conhece apenas uma tecnologia. É o que chamamos de um técnico limitado, o mesmo que um pedreiro que conhece apenas um martelo como ferramenta. No meio das discussões "VS", os principais ataques são do tipo "RoR não suporta isto", "RoR não suporta aquilo". David e Matz nunca pretenderam atender 100% das necessidades de todos. Nenhuma tecnologia deve tentar tal coisa pelo fato irrevogável de que tentar abraçar tudo e todos fatalmente significará atender nada e ninguém direito, deixando todos igualmente descontentes. Ao contrário de outros frameworks, RoR leva a sério o princípio de Paretto: 20% do esforço resolvem 80% do problema. De fato, RoR torna as coisas mundanas, que desperdiçam nosso tempo, praticamente automáticas e triviais, nos liberando tempo para dedicar onde realmente importa. Um desenvolvedor é naturalmente um profissional adaptável. Um bom desenvolvedor não gosta de rotina nem de se conformar em executar o tempo todo as mesmas tarefas mundanas. Queremos experimentar a sensação de desenvolver coisas novas e interessantes, da mesma forma quando escrevi minhas primeiras linhas de Basic em 1989. Ninguém precisa ser radical. Eu mesmo continuo a trabalhar e ganhar a vida como consultor de tecnologias SAP e Java. Ao mesmo tempo tento investir tempo e recurso em avançar RoR no Brasil. Meu livro e meu blog é meu primeiro passo. Qual será o seu? Links relacionados
Thiago Prazeres <thiagoprazeres@gmail.com>
Estou lendo seu livro, espero que continue escrevendo matérias. Abraço.
![]() ![]() ![]() ![]() ![]() Luiz Fernando Pereira <nandolup@hotmail.com>
Olá Fabio tudo bom? estou lendo o seu livro, ele é ótimo, mas voce esqueceu de colocar nele só uma coisinha, plularização das tabelas, ou vai me dizer que você escondeu os truques? rsrsrsrsrs
mas mesmo assim o livro é ótimo,mas vê se me passa como faz a plularização. Obrigado abração e parabéns ![]() ![]() ![]() ![]() ![]() ![]() |
![]() |
|
|