11/2015 UM SITE SITE EM EM UM 3 APRENDA A PROGRAMAR IMAGINE FAZER O SEU PRIMEIRO PROGRAMA EM 180 SEGUNDOS MINUTOS V1.1 WWW.DESAFIO3MINUTOS.COM.BR ELIELBARONE
RUBY ON RAILS O que é? Ruby on Rails é um framework, mas antes de tudo o que é um framework? Framework é um conjunto de ferramentas que tem como o objetivo diminuir o esforço de quem escreve o código, assim o programador pode se concentrar nas regras mais específicas, pois as coisas comuns já estão prontas, no rails toda a estrutura de cadastro, a tela de gravação, listagem a ação de excluir... tudo isso já está pré-cozido, por isso conseguiremos fazer um site em 3 minutos, e isso nos traz dois benefícios principais: - Evitamos a fadiga, pois não precisamos fazer tudo. - Não precisamos nos preocupar em organizar tudo, configurar, testar pra ver se funciona, nem mesmo precisamos saber fazer tudo isso do zero. Como desenvolvedor, considero o melhor benefício do rails o fato de não ser invasivo como outros framewoks, assim apesar de ser algo pré pronto, ele não nos deixa preso quando precisamos fazer algo fora desse universo, no caldeirão tem CSS, Javascript e HTML, é tudo que precisamos para deixar o site do jeito que queremos. Para rodar um site você precisa basicamente de: Banco de dados Onde ficará armazenada toda informação dos cadastros do seu site, sua lista de clientes por exemplo, de forma simples podemos dizer que ele é a memória do seu site, só que o banco de dados nunca esquece o que você cadastrou :), a não ser que você delete é claro. Servidor O servidor é quem entrega o seu site quando alguém digita o endereço no navegador, o servidor sabe onde está o seu código e age como um garçom quando solicitado, a diferença é que ele geralmente não te deixa esperando muito tempo, se você é um garçom não me entenda mal, é só uma brincadeira, eu ainda pretendo comer por aí e não me importo de esperar um pouco. Navegador Pode ser até o internet explorer, o que aparece no navegador são as páginas HTML, no rails serão os arquivos que estarão na pasta view. Para ter algo que nunca teve, faça algo que nunca fez
PREPARANDO O AMBIENTE Instalando Você sabia que o Tweeeter foi criado com Rails, o RoR é a linguagem oficial das startups e vai ser fácil você descobrir por quê. E aí, que tal fazer o próximo tweeter? Bom, vamos lá, mãos a obra... Para instalar todo a ambiente basta baixar o setup do rubyinstaller, o link para fazer o download está abaixo, sem custo e sem virus: http://www.railsinstaller.org/pt-br Pode instalar da forma padrão, inclusive com tudo marcado no passo 2 como abaixo: Conferindo Para ter certeza de que tudo ocorreu como planejado, abra o seu prompt de comando (cmd) Iniciar>Executar [cmd] Ou localize Prompt de Comando, aquela telinha preta do windows, como na imagem acima. Então digite: ruby -v A saída deve ser algo parecido com: ruby 2.1.5p273 (2014-11-13 revision 48405) [i386-mingw32] rails -v A saída deve ser algo parecido com: Rails 4.1.8 As pessoas que são loucas o suficiente para acreditar que podem mudar o mundo, são as que de fato mudam...
UM CADASTRO EM 3 MINUTOS Abra o seu prompt de comando (cmd) e digite os comandos abaixo: rails new minha_gang Cria o seu site com todas as configurações Caso você esteja utilizando windows, ou com algum proxy configurado, neste momento você pode receber uma mensagem como FetchError: SSL_connect, se isto acontecer faça o seguinte: abra pelo bloco de notas o arquivo Gemfile que está dentro do diretório do seu projeto (minha_gang) e remova o s de http s:// na primeira linha onde tem: source 'https://rubygems.org salve o arquivo, volte ao prompt de comando. cd minha_gang Entra no diretório do seu site somente se você teve o problema do certificado ssl acima, digite: bundle rails g scaffold pessoa nome email Gera um cadastro de pessoa com nome e email rake db:create Cria o banco de dados rake db:migrate Cria as tabelas e versiona o banco de dados Você tem seu projeto criado, configurado e com o cadastro de pessoas, com as operações novo, editar, listar, visualizar e deletar Vamos conferir? Para isso vamos instalar e configurar o servidor para rodar o nosso sistema... MENTIRA :D Apenas execute o comando rails s agora abra o seu navegador preferido e digite a url: http://localhost:3000/pessoas Sucesso, a arte de progredir de fracasso em fracasso sem perder o entusiasmo
O QUE VEM À SEGUIR? Hoje apenas arranhamos a superfície, o rails é muito poderoso e produtivo. Gem Considere as Gemas como pequenas poções de magia, onde outros já fizeram todo o trabalho e tudo o que você precisa fazer agora é usar. Para instalar uma gem você precisa referenciar a mesma no Gemfile que fica na raiz do seu projeto, e depois rodar o comando: bundle install Para deixar o seu site bonitão, você pode integrar facilmente o seu site com o bootstrap, e ele fará toda a mágica, se ainda não conhece o bootstrap acesse: http://getbootstrap.com/components Existem milhares de gems disponível, e todas grátis e bem documentadas, você pode ver a lista neste site: https://rubygems.org/gems Abaixo algumas gems que considero o pacote básico para desenvolver um site: pg Utilize o banco de dados postgres pg_search I g n o r e a c e n t o s o u b u s q u e p o r semelhanças, além de diversas outras possibilidades will_paginate Trabalhe com busca paginada carrierwave Disponibiliza uma forma simples para fazer upload de arquivos devise A forma mais simples e profissional de fazer login. Registrar usuário, confirmar cadastro... Eu vou te manter atualizado, enviando tutorias e vídeo aulas, não vai demorar muito pra você se sentir a vontade com esta tecnologia. O presente só premia os obedientes, mas o futuro será sempre grato aos rebeldes
SOBRE O AUTOR Eliel Barone tem vasta experiência no mundo do marketing com mais de 10 anos trabalhando na área de Artes Gráficas, e quando isso não foi mais suficiente mudou para o ramo de desenvolvimento de software, e agora trabalha em uma das mais respeitadas empresas do Brasil, a DB1 Global Software, atuando como desenvolvedor nas seguintes linguagens e tecnologias: Java, Javascript, ActionScript, HTML5, CSS, SCSS e Angular. Eliel é ativo na área de inovação, e desenvolve sistemas por puro prazer, utilizando o rails para obter mais produtividade, você pode conferir alguns dos sites que ele desenvolveu abaixo: http://www.palpitako.com.br https://www.pegaroulargar.com.br http://www.vemkbuscar.com.br/ ACREDITE, COM DICAS SIMPLES, VOCÊ PODE FAZER SOZINHO E DO ZERO. PULE AS CONFIGURAÇÕES COMPLICADAS E VÁ DIRETO AO PONTO WWW.DESAFIO 3 MINUTOS.COM.BR