Ruby é uma linguagem construída para definição de classes , pois é antes de tudo uma linguagem orientada a objetos. Rubi oferece uma série de atalhos para a criação de uma classe , que podem ser facilmente seguidos por aqueles que têm um pouco de experiência com a linguagem . Instruções
Criar uma classe em Ruby
1
Escolha um curto e descritivo nome para a sua classe. O nome deve ser conciso o suficiente para que quem lê o seu código pode ter uma boa idéia do que a classe faz.
2
caso de uso do camelo para o nome da classe. Caso Camel usa uma letra maiúscula no início do nome da classe e capitalizar a primeira letra da palavra seguinte ao juntar palavras. Isto é , em vez de usar um sublinhado . Por exemplo, rubi nomes de métodos parecido com este: method_name , mas nomes de classe deve ser semelhante a este : . ClassName
3
Criar uma declaração de classe vazia: classe TestClassend
4 métodos Plano
para para cada coisa sua classe deve ser capaz de fazer. Escrever , um por um , os métodos vazios para cada um dos métodos . Uma classe Micro-ondas, por exemplo, deve ser capaz de fazer coisas como ligar e colocar comida na mesma: classe Microwavedef put_food_inenddef take_food_outenddef turn_onenddef turn_offendend
Escrever o código para os métodos
5
Use a sintaxe variável @ se os métodos têm de armazenar uma variável dentro de um objeto. O símbolo "arroba" basicamente diz " Esta variável não é uma variável local, que é uma variável de membro . Pertence ao objeto. " Você também pode usar variáveis locais em métodos de classe . O exemplo usa a variável @ membro comida , em que os variável armazena o alimento que está atualmente no microondas : classe Microwavedef put_food_in ( comida ) = @ comida foodenddef take_food_outfood = @ @ comida comida = nilreturn foodenddef turn_onputs "Microwave está em" enddef turn_offputs "Microwave é off " endend
6
Começar uma etiqueta com a": caráter "eo nome da variável. Por exemplo, " : alimentar". Aqui " : alimentar", " a coisa chamada comida." "@ food" não pode ser passado para os métodos attr_ * , porque isso iria passar o valor de " @ comida ." Desde que você essencialmente quer dizer " a coisa chamada comida pode ser acessado de fora da classe , " " : alimentos " deve ser usado
7
Coloque um dos seguintes três tipos de attr_ * métodos . sua classe, mas fora de qualquer método . Por exemplo, attr_reader permite que o código fora da classe para ler a variável, mas não escrever para ele . Por outro lado , permite que o código attr_writer fora da classe para escrever a uma variável, mas não lê-lo. Finalmente, attr_accessor permite tanto a leitura ea escrita
8
Coloque um dos seguintes três tipos de attr_ * métodos em sua classe, mas fora de qualquer método : . Classe Microwaveattr_reader : fooddef put_food_in ( alimentos) @ comida = foodend # ... o resto dos métodos aqui, retirado para brevityend