La revolución industrial significó la construcción de fábricas, fábricas que funcionaban con carbón y producían un humo oscuro que cubría el paisaje, por lo que las polillas moteadas de color claro tenían menos capacidad para camuflarse. Los depredadores podían detectarlas en contraste con el paisaje más oscuro, y su tasa de supervivencia disminuyó, pero las polillas moteadas oscuras, su tasa de supervivencia aumentó. Así que a veces la selección natural es simplemente una casualidad, una mutación que resulta ser una mejora de la versión anterior, pero a veces la evolución se ve forzada en una especie.
Y debo dejar claro que `forzada` no implica intención. Los mixins ni siquiera fueron deprecados en la versión .13, y no había intención de deprecar mixins en versiones futuras. La regla era simplemente si se requería un mixin, usar create class. Los componentes de clase estaban destinados a evolucionar, React más cercano al JavaScript idiomático. Los mixins no eran parte de JavaScript, por lo que tenía sentido no incluirlos. Ahora, la falta de soporte no pretendía alejar a React de los mixins, aunque eso es lo que sucedió. No fue intencional, pero los componentes de clase sin mixins nos obligaron a evolucionar más allá de ellos.
Sin embargo, la evolución es un proceso lento, por lo que antes de que eso suceda, tenemos un nuevo desarrollo en React. Componentes sin estado, o como los llamamos ahora, componentes de función. Entonces, `sin estado` no era el mejor término para estos porque los componentes sin estado ya existían. Podías crear un componente solo con la función render. Los ciclos de vida, el estado e incluso las props siguen siendo 100% opcionales en los componentes de React. Por lo tanto, es mejor describirlos por lo que son, componentes de función. Estos se presentan como una nueva sintaxis más simple para los componentes que ya estábamos escribiendo, y debo decir que son hermosos. Cuando se lanzan, es encantador. Aún mejor con la deconstrucción de props, como, oh, mira eso, es tan hermoso. Cuando se lanzan, la comunidad de React abraza por completo los componentes de función. Estos son una adición bienvenida al árbol evolutivo de React.
Ahora, en ese momento, no hay ciclos de vida en los componentes de función y no hay opciones para reutilización de código. Al igual que los componentes de clase, los componentes de función acercan a React al JavaScript idiomático. Por lo tanto, esta evolución tiene sentido. Pero ahora tenemos create class, componentes de clase, componentes de función y create class todavía es un requisito para los mixins. Eso va a cambiar pronto. De hecho, ha estado en proceso durante un tiempo. A principios de 2016, se publica una nueva publicación de blog en el blog oficial de React. Su título es `Mixins Considerados Dañinos`. ¿Qué pasó? Entonces, a partir de .13, los mixins no están deprecados y van a ser deprecados, ¿qué cambió? Mira, los mixins no eran una gran solución desde el principio.
Comments