Mixins con la palabra clave with
Añadir capacidades sin herencia única.
Mixins con la palabra clave with es una lección gratuita de Dart Academy en CoddyKit. Esta es la lección 3 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Dart Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Dart Academy incluye 4 lecciones en total.
Más allá de las clases principales únicas
Una clase de Dart solo puede extender una clase principal, pero a menudo querrá obtener capacidades de varias fuentes. Un mixin permite incorporar comportamiento adicional de forma limpia. 🧩
Declarar un mixin
Puede definir uno con la palabra clave mixin. Se parece a una clase, pero está pensado para mezclarse con otras, no para instanciarse por sí solo.
mixin Swimmer {
void swim() => print('Swimming');
}La palabra clave with
Puede aplicar un mixin mediante with después de la declaración de la clase. La clase obtiene al instante todos los métodos que define el mixin.
class Fish with Swimmer {}
// Fish().swim() worksIncorporar varios mixins
Separe varios mixins con comas. Una clase puede combinar muchos mixins a la vez, y cada uno añade su propia parte del comportamiento.
class Duck with Swimmer, Flyer {}Combinar extends y with
Los mixins funcionan junto con la herencia. Escriba primero extends para la única clase principal y, después, with para los mixins que quiera incorporar.
class Duck extends Bird with Swimmer, Flyer {}Los mixins pueden tener estado
Un mixin también puede contener campos, no solo métodos. Cualquier clase que lo incorpore obtiene ese estado como parte de sí misma.
mixin Counter {
int count = 0;
void tick() => count++;
}No se pueden instanciar
No puede escribir new delante de un mixin puro. Solo existe para integrarse en clases reales, por lo que Dart impide construirlo directamente.
Reutilización entre jerarquías
A diferencia de una superclase, el mismo mixin puede añadirse a clases totalmente no relacionadas. Así puede compartir código sin imponer una relación de herencia.
Los mixins son tipos
Una clase que incorpora un mixin también cuenta como su tipo. Puede guardar un Fish en una variable de tipo Swimmer y llamar a sus métodos compartidos.
Swimmer s = Fish();
s.swim();Composición en lugar de herencia
Los mixins favorecen el ensamblaje de capacidades pequeñas y específicas. Puede componer el comportamiento a partir de piezas reutilizables en lugar de imponer una jerarquía profunda.
Mantenga los mixins enfocados
Un buen mixin cumple una sola función, como registrar eventos o serializar datos. Los mixins pequeños y de una sola responsabilidad se combinan limpiamente sin conflictos inesperados.
Comprobación rápida
Recuerde cómo se incorpora un mixin a una clase.
Repaso
Declaró un mixin, lo aplicó con la palabra clave with, combinó varios y compartió comportamiento entre clases no relacionadas. 🧩
Preguntas frecuentes
¿La lección «Mixins con la palabra clave with» es gratis?
Sí — el texto completo de «Mixins con la palabra clave with» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Dart Academy, actualiza a CoddyKit PRO. El curso de Dart Academy incluye 4 lecciones en total.
¿Qué aprenderé en «Mixins con la palabra clave with»?
Añadir capacidades sin herencia única. Practicas Dart Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar Dart Academy?
No se requiere experiencia previa. Dart Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 3 de 4.
¿Cuánto tiempo toma la lección «Mixins con la palabra clave with»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de Dart Academy?
Sí. Cada lección de Dart Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- extends y sobrescritura de métodos
- Llamar a super y encadenar constructores
- Mixins con la palabra clave with
- Restricciones on y orden de los mixins