Daves Balthazar

051 – Mixins em Dart – Adicionando Recursos a uma Classe – Curso de FLUTTER e DART

Playlist: Curso Grátis de FLUTTER e DART Completo

Adicionando recursos a uma classe: mixins

Os mixins são uma forma de reutilizar o código de uma turma em várias hierarquias de turma.

Para usar um mixin, use a palavra-chave with seguido por um ou mais nomes de mixin. O exemplo a seguir mostra duas classes que usam mixins:

músico de classe estende Performer com Musical
  // ···

classe Maestro estende pessoa
    com Musical, Agressivo, Demente
  Maestro (String maestroName)
    name = maestroName;
    canConduct = true;
  

Para implementar um mixin, crie uma classe que estenda o objeto e não declare nenhum construtor. A menos que você queira que seu mixin seja utilizável como uma classe regular, use a palavra-chave mixin ao invés de classe. Por exemplo:

mixin Musical
  bool canPlayPiano = false;
  bool canCompose = false;
  bool canConduct = false;

  void entertainMe ()
    if (canPlayPiano)
      print (‘tocar piano’);
     else if (canConduct)
      print (‘mãos agitando’);
     outro
      print (‘cantarolando para si mesmo’);
    
  

Para especificar que apenas determinados tipos podem usar o mixin, por exemplo, para que seu mixin possa invocar um método que ele não define, use para especificar a superclasse necessária:

mixin MusicalPerformer no Musician
  // ···