Get Started. It's Free
or sign up with your email address
Rocket clouds
Slides by Mind Map: Slides

1. Missões especiais

1.1. Para exercitar o conhecimento adquirido nesta aula, crie um projeto chamado Compras com a seguinte estrutura:

1.2. [img1]

1.3. Neste projeto você simulará o ato de escolher e comprar um produto em um mercado.

1.4. Instruções do projeto:

1.5. 1- No arquivo produto.rb, crie uma classe chamada Produto com os atributos: nome e preço.

1.6. 2- No arquivo mercado.rb crie uma classe chamada Mercado que ao ser inicializada recebe como valores padrão product e preco. Dentro da classe, crie um método chamado comprar que imprime a seguinte frase "Você comprou o produto #{@produto} no valor de #{@preco}"

1.7. 3- No arquivo app.rb crie uma instância da classe Produto e adicione valores aos atributos nome e preco. Depois, inicie uma instância da classe Mercado com os valores dos atributos de Produto e para finalizar execute o método comprar.

2. Capa - Curso de Ruby

3. Capa - Episódio 7

3.1. Programação Orientada a Objetos - Parte 2

3.1.1. Require

3.1.2. Escopo das variáveis

3.1.3. Atributos

3.1.4. Construtores

4. Require

4.1. Na Aula 5 deste curso, você aprendeu a utilizar o require para carregar arquivos de uma gem e assim poder escrever códigos com funcionalidades desta biblioteca.

4.2. Com ele também é possível carregar arquivos ruby que foram escritos por você. Para exemplificar como isso acontece você criará um projeto onde alguns arquivos conterão apenas uma classe.

5. Escopo das variáveis

5.1. O escopo define onde a varável vai estar disponível dentro do programa

5.2. No ruby existem 4 tipos

5.2.1. Variável Local

5.2.2. Variável Global

5.2.3. Variável de Classe

5.2.4. Variável de Instancia

6. Escopo de variáveis

6.1. Variável Local

6.1.1. É declarada com a primeira letra de seu nome sendo uma letra minúscula ou sublinhado.

6.1.2. Pode ser acessada apenas onde foi criada. Por exemplo, se você definir uma variável local dentro de de uma classe ela estará disponível apenas dentro desta classe, se a definiu dentro de um método conseguirá acessá-la apenas dentro deste método e assim por diante.

6.2. Variável Global

6.2.1. Declarada com o prefixo $.

6.2.2. Pode ser acessada em qualquer lugar do programa. Seu uso é FORTEMENTE DESENCORAJADO pois além de ser visível em qualquer lugar do código, também pode ser alterada em inúmeros locais ocasionando dificuldades no rastreamento de bugs.

6.3. Variável de Classe

6.3.1. É declarada com o prefixo @@.

6.3.2. Pode ser acessada em qualquer lugar da classe onde foi declarada e seu valor é compartilhado entre todas as instâncias de sua classe.

6.4. Variável de Instância

6.4.1. Seu nome começa com o símbolo @.

6.4.2. Semelhante a variável de classe, tendo como única diferença o valor que não é compartilhado entre todas as instâncias de sua classe.

7. Atributos

7.1. Atributos (ou variáveis de instância) no Ruby são sempre privados e começam com @, eles só podem ser alterados pelos métodos de um objeto.

8. Construtores

8.1. Toda vez que a instância de uma classe é criada, o Ruby procura por um método chamado initialize. Você pode criar este método para especificar valores padrões durante a construção do objeto.

9. Missões anteriores

9.1. Missão 1

9.1.1. Agora que você sabe o que é Programação Orientada a Objetos, crie um programa seguindo este paradigma com: Classes Esportista Métodos competir -> Imprime a mensagem “Participando de uma competição” JogadorDeFutebol Métodos correr -> Imprime a mensagem “Correndo atrás da bola” Maratonista Métodos correr-> Imprime a mensagem “Percorrendo o circuito” As classes JogadorDeFutebol e Maratonista devem herdar os comportamentos da classe Esportista. No final do programa execute os métodos competir e correr em objetos do tipo JogadorDeFutebol e Maratonista.

10. Próximo Aula

10.1. Ruby Avançado

10.1.1. Blocks

10.1.2. Lambda

10.1.3. Namespacing

10.1.4. Modules

11. Capa - encerramento

11.1. [colocar as redes sociais do OneBitCode]