

Seu próximo nível começa aqui
Com a Assinatura Ilimitada, você tem tudo que precisa para sua aprovação.
Com a Assinatura Ilimitada, você combina prática, teoria e método em uma única assinatura com tudo que você precisa para sua aprovação.
Considerando a linguagem de programação Ruby, supondo que exista uma implementação de uma classe Stack, que implemente uma pilha, assinale a alternativa que mostra corretamente a instanciação da classe Stack e a utilização de métodos de seu objeto instanciado:
s = new Stack( );
s.push(5);
s.push(7);
s.pop( );
s = Stack.new
s.push 5
s.push 7
s.pop
s = new Stack;
s.push(5);
s.push(7);
s.pop;
s = new Stack( )
s.push 5
s.push 7
s.pop
s = new Stack( );
s.push(5);
s.push(7);
s.pop( )
Considere as seguintes afirmativas a respeito de linguagens de programação.
I. Ruby é um exemplo de linguagem orientada a objetos.
II. Python é um exemplo de linguagem orientada a objetos.
III. C++ é um exemplo de linguagem orientada a objetos.
Assinale a alternativa CORRETA.
Nenhuma das afirmativas está correta.
Somente a afirmativa III está correta.
Somente as afirmativas I e III estão corretas.
Todas as afirmativas estão corretas.
Somente as afirmativas I e II estão corretas.
Um analista de TI está participando de uma equipe que está migrando uma aplicação de Java para Ruby, e observou que estas linguagens possuem muitas semelhanças, porém, ao contrário de Java, em Ruby
não se utiliza um garbage collector.
os objetos são fracamente tipados.
existem apenas métodos públicos e privados.
o código-fonte é sempre compilado, depois, executado.
utiliza-se nil em vez de null.
O resultado obtido pelo interpretador Ruby (versão 1.9) quando o código abaixo for executado é:
5.times{4.times{puts “5+3”}}
a string “32” será impressa 5 vezes;
a string “160” será impressa uma vez;
a string “5+3” será impressa 20 vezes;
um erro será gerado pelo interpretador pelo fato de a operação “5+3” ser inválida;
um erro ocorrerá, pois o bloco de programação funcional está declarado de forma incorreta.
Analise o trecho de código abaixo escrito na linguagem Ruby (versão 1.9).
class Carro
_________def nome= (novo_nome)
__________________@nome = novo_nome
_________end
_________def nome
__________________return @nome
_________end
end
c = Carro.new
c.nome = "Jose"
puts ______________________________________________________c.nome
Com base nesse código, está correto afirmar que:
c.nome = “Jose” faz chamada ao método nome=();
puts c.nome faz acesso direto ao atributo de classe @nome, não fazendo chamada ao método nome;
devido a atribuição c.nome = “Jose” fazer chamada ao método nome= e utilizar espaços entre nome e o símbolo de igual, um erro ocorrerá;
a chamada ao construtor obrigatoriamente deve fazer uso de parênteses, portanto, c = Carro.new irá gerar um erro;
o atributo @nome não foi previamente definido, portanto, um erro ocorrerá durante a execução do código.
A Ruby é uma linguagem orientada a objetos, com sintaxe de fácil leitura e tipagem dinâmica e forte.