Como criar classes e objetos em Ruby

Como criar classes e objetos em Ruby
Ruby é uma poderosa linguagem de programação que oferece recursos e ferramentas modernas. Um desses recursos é o suporte para programação orientada a objetos, incluindo polimorfismo de encapsulamento, abstração, herança e muito mais.

Este tutorial discutirá um conceito-chave na programação orientada a objetos: objeto e classes.

O que são aulas de rubi e os objetos?

Vamos começar com uma aula.

Uma classe é um plano para criar objetos e fornecer implementações de valores, incluindo variáveis, métodos, atributos e mais.

Um objeto, por outro lado, é uma única instância de uma classe. Veja um carro, por exemplo. Podemos criar uma classe que descreva as plantas de construção de um carro. Os atributos da classe podem ser todas as coisas que os carros têm em comum:

  1. Um motor
  2. Uma porta
  3. Uma modelo
  4. Fabricante

A classe de carro também pode incluir métodos que são ações que os objetos de classe podem executar. Um exemplo seria que o carro pode acender, acelerar, parar e tal.

As aulas são muito úteis quando você precisa criar objetos semelhantes com apenas aspectos variados. Em vez de declarar um bloco de código para um carro Mercedes, um Bugatti AR, um Tesla e tal, você pode criar uma única classe referenciada por cada modelo.

Como criar uma classe e um objeto em rubi

Ruby é uma linguagem incrível que também é muito fácil de usar. Ele fornece uma sintaxe geralmente simples para criar uma classe.

A sintaxe geral é:

Classe ClassName
# BLOQUEAR
fim

Começamos chamando a palavra -chave da classe seguida pelo nome da classe que desejamos criar. O nome da classe começa com uma letra maiúscula e usa o camelcase para os seguintes nomes.

Dentro da classe, definimos todas as variáveis ​​e métodos que a classe exigirá.

Fechamos o código da classe usando a palavra -chave final.

Exemplo

Vamos dar uma olhada em um exemplo de aula de carro.

carro de classe
def Initialize (motor, nome, ano)
@Engine = motor
@name = nome
@year = ano
fim
def ignite
coloca "ignição!"
fim
def Stop
coloca o "veículo parado"
fim
def acelere (Target_speed)
@target_speed = Target_speed
coloca "o carro acelerando em #Target_speed m/h"
fim
fim
f = carro.novo ("A108D", "F-Class", 2010)
g = carro.novo ("00CA", "Zero G-8", 2011)
h = carro.novo ("777D", "g batata", 2022)

No código acima, começamos definindo a aula de carro. Dentro da classe, definimos o método inicialize, um tipo especial de método em rubi usado para criar a instância chamada da classe com os argumentos necessários. O método inicialize atua como um construtor para novo.

Dentro do método inicializar, passamos pelo motor, nome e ano de fabricação do carro. Em seguida, realizamos algumas ações com o carro, incluindo ignição, aceleração e parada.

Finalmente, criamos uma instância da classe de carro. Chamamos isso de instanciação porque criamos uma instância da classe.

Passamos os parâmetros do método inicialize, que cria três tipos de carros exclusivos.

Usando métodos de classe

No exemplo acima, criamos uma classe com vários métodos, mas ainda não os usamos. Para usar um método, simplesmente inserimos o nome do objeto seguido por um período e o nome do método.

A sintaxe é:

my_object.método

Vamos tomar o exemplo anterior; Para acender o carro F, podemos fazer:

// Consulte o código acima
f = carro.novo ("A108D", "F-Class", 2010)
g = carro.novo ("00CA", "Zero G-8", 2011)
h = carro.novo ("777D", "g batata", 2022)
f.acender

Se executarmos o código acima, devemos ver o carro inflamar com sucesso imprimindo a string “Ignição!”

Cada parte do método inicialize funciona como um comando que define as ações que o objeto criado a partir da classe pode fazer.

Obtenha a classe de origem

Cada tipo de rubi é um objeto de uma classe. Você pode visualizar de qual classe o objeto é criado usando o método de classe.

Por exemplo:

carro de classe
def Initialize (motor, nome, ano)
@Engine = motor
@name = nome
@year = ano
fim
def ignite
coloca "ignição!"
fim
def Stop
coloca o "veículo parado"
fim
def acelere (Target_speed)
@target_speed = Target_speed
coloca "o carro acelerando em #Target_speed m/h"
fim
fim
f = carro.novo ("A108D", "F-Class", 2010)
coloca "olá".aula
coloca 10.aula
coloca 11.023.aula
coloca f.aula

Depois de executar o código, devemos ver as classes para a corda, número inteiro, flutuação e carro como:

Corda
Inteiro
Flutuador
Carro

Conclusão

Neste tutorial, aprendemos o básico da programação orientada a objetos em rubi usando classes e objetos. É bom notar que o OOP é um tópico enorme. Confira outros recursos para saber mais.