Saga do programador

19Apr/091

Aprenda Ruby – Parte II

Dando continuidade ao nosso papo, vou seguir a linha do primeiro post e falar mais sobre manipulação de variaveis.

Eu sei que não é um assunto muito empolgante, ou melhor não é muito "Ruby" (ou seja Dinamico, Agil, Divertido), mas para ter um bom entendimento temos que consolidar os fundamentos.
"Espero que o Luiz não leia isto rs.. "piada interna" hehe!"

Mas logo logo vamos entrar na parte legal, pense nessa fase como o primeiro periodo da faculdade, só que com mais serventia :)

Como falei anteriormente tudo em Ruby é objeto. Variaveis são apenas referencias para objetos e bla bla bla bla...

Vamos ver mais alguns exemplos:

Viu? o valor1 ficou com o mesmo valor2, isso por que as duas variáveis são referencias para o mesmo objeto.
Note que eu alterei a variável "Var2[5] = 2" ao invés de atribuir um outro valor para ela "var2 = valor2", nesse ultimo caso eu estaria atribuindo um novo objeto String para a variável var2.
Mas isso você já sabia né? hum... Você lembra de todo aquela papo de linguagem dinâmica e tipagem forte do primeiro post? Não? putz.. seu fanfarrão! da uma olhada lá novamente: post1

Existem métodos que nos ajudam a manipular variáveis, como o método freeze que congela a variável e não permite que ela seja alterada.

Outro método legal é o método dup:

variavel1 = "Valor1"
variavel2 = variavel1.dup

Esse método deveria ser usado no exemplo anterior, para impedir que as duas variáveis ficassem com a mesma referencia.

Operadores

Grande parte dos operadores são métodos e podem ser alterados.

+,-,* adição,subtração,multiplicação
/,% divisão,resto
** Expoente
& AND binario
^ ou | OR binario
>,>=,<,<= maior, maior ou igual, menor, menor ou igual
<=>,==,===,!=, =~, !~ Operadores de igualdade, você vai entender melhor nos próximos post`s
=, %=, -=, +=, /=,*=,**=, ||=, &&=, <<, Atribuição
Lógicos
&& AND
|| OR
.. e ... Ranges
? : If Then else "Adoro esse :) "
not negação
or e and composição

Durante nosso aprendizado, vamos ter oportunidade de ver mais detalhes de alguns operadores.
Ai você vai começar a entender por quê programar em ruby é tão legal :)

Só para deixar esse post menos chato, vamos ver um exemplo:

#só quero atribuir um valor quando a variável for nil
variavel = 1
=&gt; 1
variavel ||= 2
=&gt; 1
variavel = nil
=&gt; nil
variavel ||= 2
=&gt; 2
#agora o oposto
variavel = 1
=&gt; 1
variavel &amp;&amp;= 2
=&gt; 2
variavel = nil
=&gt; nil
variavel &amp;&amp;= 1
=&gt; nil

Por enquanto é só, tenho certeza que já no próximo post, as coisas vão ficar mais empolgantes, ainda essa semana vou publicar a terceira parte aonde vamos ver alguns detalhes da classe String.
Não deixe de continuar acompanhando, agora já passamos pela pior parte, o que vem pela frente é só diversão :) tenho certeza que do decorrer dos exemplos que estão por vir você vai dizer algumas vezes "Caramba! que f0d@!!" :p

Fica aqui uma charada para o próximo post:

Tenho uma String com seguinte valor "um dois tres quatro cinco", como você faria em uma linguagem chata para transformar essa String em um array contendo cinco itens?

Abraço!

Iuri Menescal
Diga não as drogas, não use IE!

Sobre Iuri Menescal

Natural de Nova Iguaçu, desenvolve software desde 1998, tendo atuado em projetos para diferentes segmentos de mercado. Em seu currículo constam linguagens como Delphi, Java, ASP, Flex, JavaScript, Action Script, C# e Ruby. Atualmente trabalha como desenvolvedor Ruby on Rails da Intelie.
Comentários (1) Trackbacks (0)
  1. Belíssimo post Iuri…
    Até eu, depois desses posts já comecei a me interessar pelo Ruby.
    Vou começar a tentar seguir a sua “apostila virtual” para estudar.
    Grande abraço.


Deixar um comentário


Sem trackbacks