Arquivo da tag: mixins

Do que gostei em ruby …

  • Metaprogramação
  • Redefinição de operadores
  • Cláusula else para tratamento de erros
  • Closures\Proc objects
  • Modificadores de expressões
  • Mixins
  • Ranges em expressões condicionais
  • O bloco case é interessante pelas cláusulas WHEN suportarem expressões não constantes
  • Em loops achei muito interessante as keywords retry e redo.
  • O nome de métodos podem ser acompanhados de ?, ! e =. Oferece mais readability. Ex:
    class ContaAPagar
    def quitada?
         return true
    end
    end
    
  • Alias
  • A palavra chave super atuando de forma contextual (isso é problemático às vezes)
  • Declarações de atributos (que não são palavras chaves e sim métodos da classe Module)
  • Duck Typing: O Tipo do objeto é determinado pelo o que ele pode fazer, não pela sua classe. Isso é legal, coerente. Mas exige bom senso e maturidade combinado com boas práticas, tipo testes unitários. Eu vejo que é muito improvável escrever um código com um estilo tão livre (laissez faire programming), em algum momento vc acaba usando o operador ===ou enviando a mensagem respond_to? à algun objeto.
  • O conceito de classes abertas
  • Definições de classe são blocos de código executável em runtime. Isso parece C\C++ com as diretivas #ifndef e #endif. A grande diferença é que essa análise em C\C++ em feita em tempo de compilação, em ruby é em runtime
  • Objetos congelados
  • Níveis de segurança e o conceito de Tainted Objects
Metaprogramação

Deixe um comentário

Arquivado em Ruby