Nesta segunda fase, iremos realizar um pequeno teste de Ruby. Nosso objetivo é testar a “intuição programática” de cada um, dado que Ruby é uma linguagem desconhecida para todos, mesmo para os que já possuem uma boa experiência com programação. Estamos avisando sobre este teste com antecedência para que todos possam ao menos dar uma olhada rápida na sintaxe de Ruby. É desnecessário estudar a sintaxe muito a fundo. Como foi dito, iremos testar a “intuição programática” e não o conhecimento da linguagem.

Além do teste de Ruby, teremos uma dinâmica em grupo e outros testes.

Gostaria de passar alguns ponteiros para que vocês não cheguem despreparados para o teste. Os tópicos principais que vamos abordar serão:

  • Arrays
  • Hashes
  • Iterators e Code Blocks
  • Strings

Vamos evitar cobrar conceitos muito avançados de orientação a objetos, mas é essencial vocês saberem pelo menos o que é uma Classe, um Objeto e um Método.

Para rodar pequenos trechos de código em Ruby, e ver a saída, recomendo o http://tryruby.hobix.com/ . Se quiserem, podem baixar o interpretador de Ruby em http://www.ruby-lang.org e executar o comando irb (interactive ruby shell), que é semelhante, só que roda na sua máquina, não no servidor.

Neste site vocês irão encontrar uma série de tutoriais sobre Ruby, muitos deles destinados a quem teve pouca ou quase nenhuma experiência com programação. Lá vocês também encontram tutoriais para quem tem experiência com outras linguagens de programação.

Em português existe o “Pequeno Livro de Ruby”, que é para iniciantes.

Segue abaixo um exemplo de questão da prova:

a = [1,2,3]
b = [4,3,2]
resposta =[]
a.each do |x| b.each do |y| resposta << [x, y] end end

Qual é o valor de resposta no fim da execução do programa?

Caso tenham alguma dúvida, não deixem de perguntar. Iremos postar as respostas aqui, para que todos tenham acesso.