Ruby On Rails

Um grupo de desenvolvedores do Rails anunciou a Rails::API, um projeto derivado do Rails que oferece um conjunto enxuto de funções que são úteis para desenvolvedores que utilizam o Rails para escrever aplicativos que utilizam um servidor backend apenas de API ou servidores.

A novidade teve o Action View e outros recursos de renderização removidos. Isso torna mais fácil e rápido o seu uso para desenvolvedores que não estão preocupados com a escrita de frontends de serviços web e ainda torna a plataforma mais leve.

O trabalho com a Rails::API vem acontecendo há vários meses, mas os desenvolvedores decidiram agora disponibilizar uma versão pública do framework, que está atualmente na versão 0.0.2.

A Rails::API é útil para escrever backends que podem ser compartilhados entre aplicativos web e clientes nativos. Ela permite que um desenvolvedor crie endpoints REST que aceitem dados no formato JSON e que eles sejam armazenados da mesma forma que um aplicativo Ruby on Rails tradicional. No arquivo README, os desenvolvedores citam a API do Twitter como um exemplo de um aplicativo que processa solicitações JSON dessa maneira.

O código fonte da Rails::API está disponível no GitHub. (mais…)

Os desenvolvedores em começo de carreira que desejam progredir rápido podem encontrar um ótimo atalho na plataforma Ruby on Rails.

Ruby on Rails
Segundo especialistas, há um motivo forte para isso: a tecnologia é muito fácil de aprender e usar. Desse modo, os desenvolvedores podem dominá-la após um período curto de estudos e começar a ganhar dinheiro com o novo conhecimento . “O Ruby é simples mesmo para quem nunca criou uma aplicação”, diz Joseane Bezerra, engenheira de software da consultoria Liferay Brasil.

O desenvolvedor, explica Joseane, também encontra no Ruby on Rails um ambiente muito amigável para produzir. “A tecnologia oferece vários modelos de códigos. Com isso, o profissional pode usá-los, fazer pequenas adaptações e produzir com rapidez caso esteja criando algo novo”, diz.

A tecnologia é uma boa opção para trabalhar no aquecido mercado de manutenção de sites. “O especialista em Ruby on Rails consegue decifrar com facilidade o código escrito por outro desenvolvedor. Portanto, não encontra grandes desafios para consertar ou melhorar um código web”, afirma Joseane.

Aproveitamento – O Ruby on Rails inclui princípios como DRY (sigla de “não se repita”, em tradução livre do inglês) e incentiva o reuso de um mesmo trecho de código. “Há também um modelo de desenvolvimento que busca diminuir o número de decisões que um código deve tomar”, diz Joseane. (mais…)

Foi disponibilizada uma nova versão estável do framework para desenvolvimento de aplicativos web Ruby on Rails (RoR). Com 189 commits na árvore de desenvolvimento, a versão 3.2.9 consiste basicamente de correções, com destaque para pequenas mudanças no ActiveRecord, ActionPack, ActiveModel, ActiveSupport, ActionMailer e Railties.

No anúncio de lançamento do RoR 3.2.9, há um alerta sobre uma brecha para ataques do tipo DoS encontrada recentemente no Ruby. A recomendação é o Ruby para a versão 1.9.3 patchlevel 327 ou configurar o servidor web para limitar o tamanho da requisição HTTP. O Nginx já faz isso por padrão, e o Apache precisa ser configurado usando a diretiva LimitRequestBody.

O RoR enfatiza o uso de padrões de projetos conhecidos, como Active Record, DRY (Don’t Repeat Yourself) e arquitetura MVC (Model-View-Controller), e é utilizado por grandes sites como Software Livre Brasil (Noosfero), Github, Diaspora, Scribd e Groupon.

A série estável 3.2.x do Ruby on Rails será a última a suportar o Ruby 1.8.7. A próxima versão do Rails (4.0) terá como requisito a versão 1.9.3 ou superior do Ruby, que traz como vantagem uma grande melhoria no desempenho e na escalabilidade. (mais…)

Com o lançamento do JRuby 1.7.0, a implementação já passou a comportar-se como o Ruby 1.9.3 (por padrão). A nova edição da implementação Java baseada na máquina virtual de Ruby, também promete trazer melhorias de desempenho em aplicativos de alto pode concorrencial, graças a um ano e meio de desenvolvimento que tem melhorado todos os subsistemas da linguagem. Os usuários ainda têm a opção de usar o “-1,8″(opção de linha de comando para o Ruby 1.8.7), no modo de compatibilidade.

JRuby

O lançamento do JRuby 1.7 é a primeira versão completa, já que os desenvolvedores do núcleo passaram da EngineYard para a Red Hat , no mês de maio desse ano. Os desenvolvedores reassaltaram que existem partes do suporte ao Ruby 1.9 que ainda estão faltando, como a 1.9.3 do Ruby Ripper Parser Ruby. Entretanto, eles sentem que estão “em um ponto estável”, onde as pessoas podem utilizar o JRuby 1.9 para hospedar aplicativos de produção. Dito isso, eles também planejam estar produzindo atualizações pontuais de 1.7 a cada 2 a 3 semanas, para uma previsão sobre como corrigir os problemas e preencher as partes que faltam nas bibliotecas Ruby 1.9. (mais…)

Introdução

Ruby é uma linguagem que anda fazendo barulho nos últimos tempos, com foco em simplicidade e pragmatismo, está cativando muitos programadores, principalmente Web.

Este artigo está na área de Java porque no VOL ainda não tem uma seção para a nossa pedrinha de Rubí, e a IDE que utilizaremos é baseada em Java… fica meu pedido para a abertura da categoria Ruby.

A partir de agora iremos acompanhar os passos da instalação dos seguintes softwares:

  • Ruby 1.8 (Interpretador da linguagem);
  • Ruby Gems (Gerenciador de pacotes de softwares Ruby, estilo apt-get);
  • Rails 1.2.3;
  • PostgreSQL 8.2 (Vou com a cara desse banco, podia ser muito bem um MySQL ou SQLite);
  • postgres-ruby (driver do postgresql para ruby);
  • NetBeans IDE 6 Development (Um preview da nova IDE OpenSource incentivada pela Sun Microsystems).

No término, veremos o nível imenso de produtividade com nosso “Rubí nos Trilhos”!

Baixando e instalando PostgreSQL + Ruby + Rails

Indo na filosofia da comunidade Java, “Compatibility Matters!”, descreverei os passos para a instalação no Ubuntu (ou qualquer Debian Based), Slackware e de maneira genérica. (mais…)

Promoção de Aniversário

Calendário Calendário

Ferramentas para Automação de Teste de Software / Duração: 20h

30 de julho a 03 de agosto / Noite: 18:45 às 22:45 / Local: TargetTrust Confirmada
27 de agosto a 31 de agosto / Manhã: 8:00 às 12:00 / Local: TargetTrust
30 de outubro a 06 de novembro / Noite: 18:45 às 22:45 / Local: TargetTrust
08 de dezembro a 22 de dezembro / Sábado Integral: 8:30 às 12:30 e 13:30 às 17:30 / Local: TargetTrust
17 de dezembro a 21 de dezembro / Noite: 18:45 às 22:45 / Local: TargetTrust

Oracle 11g: Administração do Banco de Dados II / Duração: 30h

31 de julho a 09 de agosto / Noite: 18:45 às 22:45 / Local: TargetTrust Confirmada
03 de setembro a 13 de setembro / Manhã: 8:00 às 12:00 / Local: TargetTrust
18 de setembro a 28 de setembro / Noite: 18:45 às 22:45 / Local: TargetTrust
06 de outubro a 10 de novembro / Sábado Integral: 8:30 às 12:30 e 13:30 às 17:30 / Local: TargetTrust Confirmada
30 de outubro a 09 de novembro / Manhã: 8:00 às 12:00 / Local: TargetTrust
13 de novembro a 23 de novembro / Noite: 18:45 às 22:45 / Local: TargetTrust

Orientação a Objetos com UML / Duração: 20h

01 de agosto a 07 de agosto / Manhã: 8:00 às 12:00 / Local: TargetTrust
04 de agosto a 18 de agosto / Sábado Integral: 8:30 às 12:30 e 13:30 às 17:30 / Local: TargetTrust Confirmada
06 de agosto a 10 de agosto / Noite: 18:45 às 22:45 / Local: TargetTrust Confirmada
03 de setembro a 10 de setembro / Noite: 18:45 às 22:45 / Local: TargetTrust
01 de outubro a 05 de outubro / Manhã: 8:00 às 12:00 / Local: TargetTrust
01 de outubro a 05 de outubro / Noite: 18:45 às 22:45 / Local: TargetTrust
05 de novembro a 09 de novembro / Manhã: 8:00 às 12:00 / Local: TargetTrust
05 de novembro a 09 de novembro / Noite: 18:45 às 22:45 / Local: TargetTrust
03 de dezembro a 07 de dezembro / Manhã: 8:00 às 12:00 / Local: TargetTrust
03 de dezembro a 07 de dezembro / Noite: 18:45 às 22:45 / Local: TargetTrust

(mais…)

O que é code refactoring?

Refatorar é mudar o código que está feito sem mudar o comportamento. Idealmente, devemos melhorá-lo; porém se fizermos algo errado, ainda sim podemos dizer que fizemos uma refatoração. Obviamente, estamos simplificando ao máximo.

Refactoring

Dicas

  • DICA 1: Adicione FIXME e TODOS no seu código;
  • DICA 2: Sempre que possível reserve um tempo para melhorar o seu código;
  • DICA 3: Extraia métodos para que eles fiquem simples e independentes. Evite a complexidade e DRY (Don’t Repeat Yourself);
  • DICA 4: Nomeie corretamente as variáveis. EVITE coisas como $nCli, $imgW, etc.. Hoje você sabe o significado mas e daqui a dois meses? Prefira variáveis como $nome_cliente, $image_width, nomes mais legíveis;
  • DICA 5: Procure sempre otimizar o código para que ele tenha uma performance melhor;
  • DICA 6: A cada mudança no código, rode os testes para garantir que tudo esteja funcionando. ALWAYS GREEN; (mais…)

A primeira versão preview do JRuby 1.7 adota por padrão o runtime do Ruby 1.9 e é muito mais rápida graças ao invokedynamic do Java 7.  Charles Nutter, criador do JRuby, falou sobre o futuro do projeto no Java 7, os Fibers e a ida da equipe do JRuby para a Red Hat.

jruby

O primeiro preview do JRuby 1.7.0 saiu mais de um ano depois do lançamento da primeira versão da série 1.6 do JRuby. O JRuby 1.6 foi a primeira versão compatível com o Ruby 1.9.2. Além de o JRuby 1.7 adotar o Ruby 1.9 como runtime padrão, há várias outras mudanças: (mais…)

Twitter e APIs

Embora, inicialmente, a web se destinasse à interação entre homens e máquinas, hoje ela trata da interação entre máquinas, ativando o uso de WebServices. Esses serviços existem para os sites mais populares —de vários serviços do Google ao LinkedIn, Facebook e Twitter. WebServices criam APIs por meio das quais aplicativos externos podem consultar ou manipular conteúdo nos sites da internet.

Twitter Developers

Os WebServices são implementados usando uma série de estilos. Hoje, um dos mais populares é o Representational State Transfer, ou REST. Uma implementação do REST é sobre o bem conhecido protocolo HTTP, permitindo que o HTTP exista como um meio para uma arquitetura RESTful (usando operações HTTP padrão como GET, PUT das atualizações, POSTe DELETE). (mais…)

Algumas novas implementações e dialetos do Ruby têm aparecido, juntando-se ao grande conjunto de dialetos existentes. As novidades são MRuby, MobiRuby e RubyMotion. Aqui apresentamos o que trazem de novo.

Ruby On Rails Happy Coding

MRuby

Começamos pelo MRuby, desenvolvido pelo criador do Ruby, Yukihiro “Matz” Matsumoto. Na RubyConf 2010Matz anunciou seu trabalho no desenvolvimento do Rite, uma implementação leve do Ruby. O resultado daquele trabalho é o MRubydisponibilizado no GitHub, que contempla parcialmente a especificação da linguagem do ISO. O foco, porém, é completamente diferente do MRI e do Ruby 1.9; logo o MRuby não é o Ruby 2.0.

O MRuby pode ser usado simplesmente para executar programas Ruby, mas foi projetado especialmente para ser integrado em outros programas (por exemplo, em jogos, como uma alternativa à linguagem Lua). Pode também ser utilizado em pequenos dispositivos com pouca memória. (mais…)