Assertions no Ruby on Rails

at 12/12/2008
tagged as #Rails
Pedro Mendes

Cheat sheet resumindo a lista de assertions mais conhecidos no RoR.

ruby and rails assertions

Dica : Desenvolvimento Web Ágil com Rails

at 13/09/2008
tagged as #Agile #Rails
Pedro Mendes

Pois é, o ultimo livro que comprei acabou rápido ( terminei de ler até mesmo antes da fatura do cartão de crédito ser emitida. Será que posso devolver o livro ? ). Logo no inicio do The Pragmatic Programmers os autores falam sobre expandir continuamente seu conhecimento, lendo bons livros a todo momento e aprendendo pelo menos uma linguagem de programação nova por ano. Tentando cumprir isso, tomei vergonha pra começar a estudar Ruby on Rails de verdade.

Como gostei muito do estilo usado pelo grupo The Pragmatic Programmers, comprei o livro deles sobre Rails. Já li umas 60 páginas e estou sentindo que vai dar namoro. Provavelmente os posts sobre Rails no blog vão começar aparecer ;-)

Overload de Propriedades e Métodos em PHP

at 30/06/2008
tagged as #Rails
Pedro Mendes

Essa dica é velha mas sempre é útil:


__get( $propriedade ) {}

Estoura quando se tenta ler o conteúdo de um atributo que não exista na sua classe. O parâmetro que ela recebe sempre será o nome da atributo inexistente.

Por exemplo:

class casa {

function __get( $propriedade ) {

throw new Exception("A propriedade $propriedade não existe no objeto " . get_class($this) );

}

}

__set( $propriedade, $valor ) {}

Exatamente como a de cima, porém, como é de se perceber, só estoura quando se tenta atribuir algum valor a um atributo inexistente. O primeiro o parâmetro é o nome do atributo, o segundo o valor. Acho que não precisa de exemplo neh ? Qualquer coisa adapte o de cima....


__call( $metodo , $argumentos ) {}

Este útimo serve para a chamada de métodos inexistentes... O primeiro parâmetro, obviamente é o nome do método e o segundo parâmetro é um array com os valores passados como parâmetros.

Primeiro Livro de RoR é Brasileiro

at 16/06/2008
tagged as #Rails
Pedro Mendes

Isso mesmo, o primeiro livro de RoR 2.1 é tupiniquim. Graças ao trabalho de Carlos Brando e Marcos Tapajós .

Para baixar, clique aqui.

Hello World em Rails

at 26/05/2008
tagged as #Rails
Pedro Mendes

Fala pessoal...

Esse final de semana tirei algumas horas para estudar Ruby on Rails. Como não tenho um vasto conhecimento na plataforma, não vou me deixar guiar pelas poucas coisas que vi. O que posso dizer é que até então tenho gostado.

Configurando no Windows

Mesmo estando on Windows, achei a configuração do ambiente de desenvolvimento extremamente simples. Basta baixar a ultima versão do Ruby no próprio site do RoR e realizar alguns passos simples. Depois de rápidos next > next >finish, o Ruby teoricamente estará instalado. Basta agora instalar o framework Rails, abrindo o console do windows e digitando:

gem install rails --include-dependencies

Sua primeira aplicação

Pronto! Ruby e Rails instalados. Para criar um "hello world", basta agora criar uma pasta em algum lugar ( de preferência via Console ) e logo após, dar um rails "nome a aplicação". Mais ou menos assim:

md C:\rubydevs
cd C:\rubydevs
rails hello

Como é notório, criei um diretório na raiz e, na ultima linha chamei o daemon do rails dando o nome da minha futura aplicação. Ele automaticamente cria toda a estrutura de desenvolvimento que preciso, colocando todos os arquivos usados pelo RoR lá.

Para criar um primeiro controle para sua aplicação, entre no diretório do projeto ( no meu caso hello ) e, via prompt, faça o seguinte:

ruby script/generate controller helloworld

Fazendo isso, usamos um script gerador que já faz algumas coisas úteis para nós ( como criar helper e test para o controle novo).

Agora é hora de criarmos alguma ação para o novo controler. Que tal sairmos um pouco do maldit... ehrr... bom, quero dizer, adorável Console do Windows ? A própria instalação do Ruby já nos deixa com o SciTE, um editor de textos bacana. Se preferir uma IDE, uma dica é começar utilizando o Aptana RadRails ( plugin para o Eclipse ). Se você seguir o mesmo caminho que eu, terá que baixar o Aptana Studio ( já com o Eclipse ) e depois fazer uma pequena atualização para o RadRails - que aparecerá automaticamente no startup do Aptana.

Depois vá na pasta app/controllers e abra o controle criado - no nosso caso o helloworld. O nome do file sempre fica nomedocontrole_controller.rb . A estrutura do arquivo será identico a seguinte:

class HelloworldController < ApplicationController
end

Temos o declarador class seguido pelo nome do controle, o "<" indicando herança, o nome da classe Pai e o end finalizando a classe. Vamos criar o método dummie. Agora seu arquivo deve ficar da seguinte maneira:

class HelloworldController < ApplicationController
def dummie
end
end

Já é o suficiente. Vamos agora para a visão. Dentre a estrutura de diretórios, existe um chamado views. Se você abrir este diretório, notará que existe um subdiretório com o nome do seu novo controle - isso não é magia, é pura tecnologia. Agora, crie um aquivo com a extensão rhtml que será a visão do seu controle. Como o nome da ação que criamos é dummie, logo, o nome da visão será dummie.rhtml . Esse arquivo será automaticamente chamado pelo RoR, quando o método dummie do controle for chamado. Como ele será a parte html da sua aplicação web, escreva alguma coisa para estar no browser.

Agora é só rodar. Para isso, retorne ao console e, dentro do diretório da sua aplicação, digite:

ruby script/server


O script server levanta automaticamente o servidor na porta 3000. Para testar, vá no seu browser favorito ( provavelmente Firefox, Opera ou Safari ) e teste a url:

http://localhost:3000/helloworld/dummie



Eis aí a criança. Sei que o tópico foi extremamente simples, mas tentei abordar desde a instalação a primeira aplicação. Tenho feito alguns teste e tenho gostado do que tenho visto. Com o passar do tempo vou dividindo com vocês.

I've read and recommend

//]]>