QUEIMA DE ESTOQUES DO SUBMARINO! Aproveite e economize!
Powered by MaxBlogPress  


Aulas de Ruby – Uma Breve Introdução

Ruby é uma linguagem de programação que pretendo aprender há um bom tempo. Conheci ela quando estava olhando o blog do TaQ e um tempo depois resolvi pegar o tutorial dele para conhecer um pouco mais. O pouco que vi gostei ;) Isso já faz mais de um ano. Infelizmente não tive tempo livre para aprender. No meu aniversário, depois de tanta insistência, ganhei da minha namorada o livro que o TaQ escreveu: Ruby – Conhecendo a Linguagem.

Ruby - A Programmer's Best Friend

Infelizmente não pude começar mais cedo a aprender por causa da faculdade. Agora que estou de férias vou tentar começar (me desejem boa sorte ;D).

No prefácio do livro, seu autor diz que começou fazendo anotações do que ia aprendendo e logo isso se tornou uma apostila que, finalmente, virou um livro. Resolvi usar mais ou menos o mesmo método de aprendizado que ele usou. A diferença é que já vou postando direto aqui no blog cada coisa que vou aprendendo ;)

Gostaria de avisar que as aulas que publicarei serão feitas baseadas no livro do TaQ (que já dei uma lida rápida em alguns capitulos e achei excelente e fácil de aprender), mas tentarei mudar o estilo das aulas e não fazer tudo como está no livro para poder contribuir com algo novo e não apenas copiar um trabalho já pronto ;) Outra razão de fazer isso é porque não quero eventuais problemas com a editora do livro…

Um pouco mais sobre Ruby

Para melhor entendimento da linguagem, farei uma tradução livre de algumas partes da página “About Ruby” que pode ser encontrada no site oficial da linguagem:

Os Ideais do Criador do Ruby

“Ruby é uma linguagem de equilíbrio cuidadoso. Seu criador, Yukihiro “matz” Matsumoto, misturou partes de suas linguagens favoritas (Perl, Smalltalk, Eiffel, Ada e Lisp) para formar uma nova linguagem que equilibrava programação funcional com programação imperativa.

Ele tem dito frequentemente que está “tentando fazer Ruby ser natural, não simples”, de forma que espelhe a vida.

Com isso, ele adiciona:

“Ruby é simples em aparência, mas é muito complexa por dentro, assim como nosso corpo humano”.

Vendo Tudo Como um Objeto

Inicialmente, Matz procurou nas outras linguagens para encontrar uma sintaxe ideal. Ao relembrar sua pesquisa, ele diz: “Eu queria uma linguagem interpretada que fosse mais poderosa que Perl e mais orientada à objetos do que Python.”

Em Ruby, tudo é um objeto. Cada pedaço de informação e código pode receber informações e ações próprias. Programação orientada à objetos chama as propriedades pelo nome de variáveis de instância e as ações são conhecidas como métodos. A abordagem puramente orientada à objetos de Ruby é geralmente demonstrada por um pedaço de código que aplica uma ação à um número:

5.times { print "Nós *amamos* Ruby -- É du caralho!" }
Em várias linguagens, números e outros tipos primitivos não são objetos. Ruby segue a influência da linguagem Smalltalk ao dar métodos e instanciar as variáveis para todos os seus tipos. Isso facilita o uso, já que regras que se aplicam aos objetos se aplicam em tudo do Ruby.
Aparência Visual do Ruby

Enquanto o Ruby frequentemente usa pontuação limitada e usualmente prefere palavras em inglês, algumas pontuações são usadas para decorar a linguagem. Ruby não precisa de declaração de variáveis. Apenas usa convenções de nome simples para denotar o escopo das variáveis.

  • var pode ser uma variável local
  • @var é uma variável de instância
  • $var é uma variável global

Estes sigils aumentam a legibilidade ao permitir ao programador identificar facilmente os papéis de cada variável. Também torna desnecessário o uso cansativo do self. acrescentado no começo de cada membro da instância.

Além do Básico

Ruby tem uma porção de outras características, entre as quais podemos citar:

  • Ruby tem a capacidade de cuidar de exceptions, como Java ou Python, o que torna o tratamento de erros mais fácil
  • Ruby tem um verdadeiro garbage collector marca-e-limpa para todos os objetos. Não há necessidade de manter contagem de referências nas bibliotecas de extensão.  Como Matz diz, “Isso é melhor para sua saúde.”
  • Escrever extensões C em Ruby é mais fácil que em Perl ou Python, com uma API elegamente para chamar Ruby pelo C. Isso inclúi chamadas para incorporar Ruby no software, para usar como uma linguagem de script. A interface SWIG também é disponível.
  • Ruby pode carregar bibliotecas de extensão dinamicamente se um Sistema Operacional permite.
  • Ruby apresenta threading independente. Além disso, para todas as plataformas em que Ruby rod, você também terá multithreading, não importando se seu sistema operacional suporta ou não, mesmo no MS-DOS!
  • Ruby é altamente portável: é desenvolvido principalmente no GNU/Linux, mas funciona em vários tipos de Unix, Mac OS X, Windows 95/98/ME/NT/2000/XP, DOS, BeOS, OS/2 etc.

No site oficial tem mais informações. Na própria página “About Ruby” mais coisas podem ser encontradas, já que o que traduzi foi apenas parte dela. Se quiser ler mais sobre Ruby e em português, dê uma olhada neste post no blog da minha gatinha ;)

Antes de finalizar quero aproveitar para convidá-los a conhecer um pouco da linguagem Ruby. O site Try Ruby apresenta um tutorial rápido e simples com uma interface que interpreta os comandos em Ruby. É muito legal, rápido e útil ;D

Outra fonte de aprendizado rápida e simples é o “Ruby in Twenty Minutes“. É um pequeno tutorial que leva menos de 20 minutinhos para completar. Para usá-lo é necessário (obviamente) já ter o Ruby instalado.

E para quem já programa em alguma outra linguagem, basta clicar aqui para ter uma idéia das diferenças entre Ruby e as outras linguagens…

Ah sim, se quiser começar a ler o tutorial do TaQ, basta clicar aqui para baixá-lo.

Por enquanto é só pessoal ;D Aguardem, pois em breve postarei a primeira aula de Ruby ;)

Leia Também:



11 Responses to “Aulas de Ruby – Uma Breve Introdução”

  1. Aulas de Ruby – Uma Breve Introdução « Terramel

    uby é uma linguagem de programação que pretendo aprender há um bom tempo. Conheci ela quando estava olhando o blog do TaQ e um tempo depois resolvi pegar o tutorial dele para conhecer um pouco mais…

  2. Terramel,

    Eu comecei a 3 meses a estudar PHP, e venho tento grandes dificuldades, hehehe, a lógica eu intendo, mas quando eu paro na frente do pc para programar alguma coisa, as dificuldades aparecem no ATO.

    O Ruby deve ser mais dificil, não sei, mal conheço, mas minha intenção é desenvolver sistema para WEB, com o ruby é possível?

    Responder

  3. Eu to começando com Ruby, que bom que você vai postar aulas aqui, bom que vou poder acompanhar e aprender por aqui, decidi começar pelo ruby seguinte o seu conselho lá no meu blog asagadaprogramao…

    Agradeço pelo conselho, estarei de olho aqui pra ver as aulas de Ruby.

    Abração.

    Responder

  4. Show de Bola Terrinha!
    Meu principal motivo para iniciar o blog foi justamente para postar meu aprendizado em ruby ou python, ainda não estava bem direcionado. Enquanto comecei a escrever sobre meu passado, praticamente fiquei ao lado de ruby, para posteriormente aprender rails, acho que este é basicamente o intuito de 90% ou mais dos iniciantes em ruby.
    Ficarei ancioso aguardando teus posts.
    Abraços

    Responder

  5. Parabéns pela iniciativa, Ruby é uma ótima linguagem, e completíssima !
    Conheco um pouquinho dela a algum tempo, mas pretendo me aprimorar mais, até para desenvolver Ruby+GTK…

    Um abraço

    Responder

  6. Cara,
    Parabéns pelo blog e pelo belo post.

    Eu tentei “mecher” com ruby mas não tive muito sucesso, claro consegui fazer alguma coisa, mas o que eu queria não consegui que foi conectar em um banco de dados e retornar os dados para outra aplicação em Flex, mas eu acho que com um pouco de estudo eu faço alguma coisa.

    []’s

    Responder

  7. Há não querendo ser chato, você assitiu a segunda temporada do Heroes????

    Pois você vai ficar de cara com o homem que a menina fala que é pior que o Sylar.
    hahahah

    []’s

    Responder

  8. Æ!!

    Eu estou participando do curso on-line do rubylearning! =)
    Estou aprendendo aos poucos…É bem interessante o curso, se tiver força de vontade é uma ótima ferramenta de aprendizado!

    http://www.rubylearning.org/class/

    O curso é gratuito! =D

    Fica aí o link para quem quiser se inscrever para o próximo ( abril se não me engano )

    O curso é todo em inglês e o mentor do curso é o Mr. Satish Talim.

    Vale a pena conhecer!

    Há braços

    Responder

  9. This post is very hot, it is high ranked at the top posts of wp – the ranking of wp blog posts, but today we built a more professional report for English wp top blogs, and posts. You can see http://indirecting.blogspot.com/ for more information

    Responder

  10. [...] Aulas de Ruby – Uma Breve Introdução [...]

  11. Olá.
    No meu blog fiz um pequeno post falando sobre Ruby e linkei aqui seu blog como uma das fontes de estudo. Espero que não tenha problema.

    Aí o link: http://www.dicaspc.com/2008/01/quer-aprender-programar-conhea-o-python.html

    Valeu.

    Responder

Leave a Reply

CommentLuv Enabled