domingo, 29 de novembro de 2009

rails NovoUsuario -d sqlite3

Creio que antes de começar a ensinar o que são essas siglas que mencionei no último post, é mais importante dizer como iniciar e configurar o Ruby on Rails.

Mesmo sendo usuário de Windows, recomendo a você ler o tutorial para os usuários de Ubuntu, pois eu explico alguns conceitos que podem parecer novos a você.

Usuários de Ubuntu



Se você é usuário de Ubuntu, como eu, instalar tudo é fácil: basta instalar os pacotes ruby-full e build-essential, com esse comando:
sudo aptitude install ruby-full build-essential

Isso vai instalar toda a base do Ruby (a linguagem de programação usada no Ruby on Rails), como o irb (console do Ruby), rdoc (gera documentação a partir do código Ruby) e, principalmente, o RubyGems (gerenciador de pacotes do Ruby).

Você não vai instalar nenhuma extensão do Ruby através do apt ou do Synaptic (ou através de instaladores executáveis, no caso do Windows), e só vai compilar do código se não existir versão no repositório do Ruby. Você deve, ao máximo, instalar todas as extensões, incluindo o Rails, através do RubyGems. Como fazer isso? Com o comando gem.

Primeiro, atualize o RubyGems:
sudo gem update --system

Depois, instale o Rails, incluindo todas as dependências:
sudo gem install rails -y

O -y significa a mesma coisa que --include-dependencies, não importa qual dos dois você vai usar.

Depois de instalado o Rails, você deve instalar o SQLite3:
sudo aptitude install sqlite3

E o driver para Ruby:
sudo gem install sqlite3-ruby

Estou usando SQLite3 como exemplo porque é um gerenciador de Banco de Dados muito leve e de fácil uso, ótimo para o aprendizado do Ruby, mas nada recomendado para aplicações sérias. Nesse caso, o Ruby também tem drivers para MySQL, PostgreSQL, entre outros SGBD's. Ensinarei a instalá-los em posts futuros.

Pronto, seu ambiente Rails está pronto para ser usado.

Usuários de Windows



Antes de mais nada: recomendei que lesse a seção anterior, mesmo sendo usuário de Windows. Você deve ter visto um termo que talvez tenha soado estranho: "gerenciador de pacotes". O que seria isso?

Um gerenciador de pacotes é apenas um programa que instala, atualiza e remove "pacotes" (aplicações pré-compiladas). Ou seja: você não precisa ficar se preocupando em acessar o site do Rails sempre que uma nova versão sair, basta atualizar o RubyGems. Simples, não?

O Rails não tem uma performance tão boa no Windows quanto no Linux, e isso é perceptível. É muito mais fácil integrá-lo com Apache no Linux e no Mac OS, inclusive. Mas, se você está apenas aprendendo, o Windows pode ser uma boa opção, porque o servidor de testes do Rails (o WEBrick) não precisa ser configurado.

Primeiro, você deve baixar o binário do Ruby 1.8 em http://www.ruby-lang.org/pt/downloads/
Facilmente localizável, basta baixar o One-Click Installer. Não baixe a versão 1.9. As versões com a segunda numeração ímpar são sempre experimentais, e servem apenas para testar as funcionalidades que poderão ser implementadas na versão seguinte (que, no caso, será a 2.0). Por isso, o Rails não tem suporte ao Ruby 1.9.

Depois, baixe o SQLite. Procure em http://www.sqlite.org/download.html a seção Precompiled Binaries For Windows. Baixe os arquivos sqlite-3_6_20.zip e sqlitedll-3_6_20.zip e descompacte-os para C:\Ruby\bin (ou qualquer outro diretório onde o Ruby esteja instalado). Acredite, tudo fica mais fácil se você deixá-los nesse diretório.

Depois, instale as gems como explicado na seção de usuários de Linux, abrindo o prompt de comando e digitando:
gem update --system
gem install rails -y
gem install sqlite3-ruby

Repare que no Windows você não digita o sudo.

Se esses comandos não funcionarem, digite
cd c:\Ruby\bin

E tente de novo.


Pronto, agora o Rails está instalado e você pode começar a usá-lo.

sábado, 28 de novembro de 2009

Introdução

Comecei a programar com Rails há pouco tempo, ainda esse ano. Creio que eu não tenha completado um semestre de uso.

Ainda assim, aprendi a usar tantos recursos, de forma tão rápida e limpa, que fiquei impressionado. Os códigos são curtos, simples, e inteligíveis; usar Ajax com Rails é tão fácil quanto não usar; a organização torna tudo mais fácil de manter e consertar; usar diferentes SGBD's é mais fácil que instalar uma aplicação pelo Synaptic, entre diversos outros milagres do DRY, REST e MVC, que explicarei mais tarde.

É incrível a curva de aprendizagem desse framework. Em poucas semanas estava conseguindo usá-lo, e quanto mais aprendo sobre ele, mais fácil ele se torna, ao contrário da maioria das bibliotecas e API's.

Não, não tenho toda uma carga de experiência para ensinar qualquer coisa. Mas tenho experiẽncia para ajudar iniciantes em caminhos que eu sofri MUITO para encontrar soluções. DRY e REST são ótimos, mas às vezes é difícil encontrar uma solução assim sem ajuda.

E eu espero aprender mais do que pretendo ensinar. O ensino é um aprendizado, afinal.