Resumo 8

  1. Módulos Ruby são similares a classes em relação ao fato de que também armazenam uma coleção de métodos, constantes e outras definições de módulos e classes. Entretanto, diferente das classes, você não pode criar objetos baseados em módulos; ao invés disso, você especifica qual funcionalidade de um módulo específico você deseja adicionar a uma classe ou a um objeto específico.
  2. Módulos tem dois propósitos principais: Primeiro agem como namespace, permitindo que você defina métodos cujos nomes não irão coincidir com outros já definidos. Em segundo lugar, eles permitem que você compartilhe funcionalidade entre classes – se uma classe inclui um módulo, os métodos de instância do módulo ficam disponíveis como se tivessem sido definidos na classe. Eles são ‘misturados’ (mixed in) a classe.
  3. Observe como você pode usar require ou load para arquivos e include para os múdulos.
  4. Lembre-se que você pode incluir mais de um módulo em uma classe. Entretanto, uma classe não pode herdar de mais de uma classe.
  5. Nomes de classe tendem a ser substantivos, enquanto nomes de módulos são com frequência adjetivos.
  6. Em cada lugar que seu programa roda, existe um e apenas um self – o objeto atual ou objeto padrão que você tem acesso em seu programa.
  7. Observe que as regras dadas para self na página relacionada a Self.
  8. O Java possui a habilidade de serializar objetos, permitindo que você os armazene e reconstitua-os quando necessário. O Ruby chama esse tipo de serialização de marshaling (empacotamento).
  9. Marshal.dump é usado para salvar uma versão serializada de um objeto.
  10. Marshal.load é usado para ler o objeto serializado de um arquivo.
  11. Uma constante Ruby é uma referência para um objeto.
  12. Embora constantes não devam ser alteradas, você pode modificar o estado interno de objetos referenciados pelas mesmas.
  13. Lembre-se das regras para constantes.

Logo do Guru-SP

Este material tem como base o tutorial do RubyLearning.com de Satish Talim e foi traduzido por membros do GURU-SP com a permissão do autor.

Ajude o RubyLearning participando em algum dos cursos pagos ou fazendo uma doação para o projeto

Voltar para o índice