POO con ES6 (constructores, métodos y herencia)
Clase 16 de 24 • Curso de Clean Code y Buenas Prácticas con JavaScript
Contenido del curso
Clase 16 de 24 • Curso de Clean Code y Buenas Prácticas con JavaScript
Contenido del curso
Elcira Ibarra
Brandon Lee Aguero Fernandez
Markin Piero Pulache Guarniz
LEONARD CUENCA
Irving Juárez
Markin Piero Pulache Guarniz
Daniel Ochoa
Maday Choque
Carina Payleman
karen Meyhuay Zarzosa
Luis Palomo
Sandra Rosa Arroyo Paredes
Luis Palomo
Ana Rotela Cabrera
freddy conto mena
Confirmo!
buen aporte
Clase 16: POO con ES6 (constructores, métodos y herencia)
Clase
Ejemplo
//intaxis a partir de ES6: class Cat { constructor(cat) { this.name = cat; } greet () { return 'Hola! Mis dueñ@s me llaman ' + this.name; } } const cat = new Cat("Michi"); // Antes de ES6 function Person(name) { this.name = name; } var person = new Person("Alex"); console.log(person.name); //> Alex
En JS no existen las clases, son azucar sintáctico para la herencia prototipal.
En esta clase se dice que con ES6 y las clases, el código es más limpio y fácil de entender. En mi opinión, los prototipos no son tan dificiles de entender y me parece una buena implementación.
Cuál es el problema? La mayoria de los programadores de JS venían del lenguaje Java. De hecho, por eso se llama JavaScript, para que los devs de Java pasaran a usar JS pensando que los dos lenguajes eran similares.
La verdad es que los dos lenguajes son diferentes, pero JS hizo grandes esfuerzos para que se pareciera los más posible a Java, por eso las funciones constructoras empiezan con el operador new. Eso se parece a muchos más a Java.
Lo mismo con las clases. Como muchos lenguajes de programación utilizan la POO y ya hay un formato de pensamiento muy popular, era más fácil si JS se adaptaba a esa misma manera de sintaxis.
bien aporte
Porque cada día se busca llegar a más personas, que más personas puedan interactuar con los lenguajes y crear cosas nuevas, no cerrarse a los mismos programadores de siempre, por eso JavaScript y Python son tan descriptivos y textuales, para ser amigables, lo que Java no es ni en los sueños más remotos de nadie hahah
El constructor es un método especial que se utiliza para inicializar una nueva instancia de la clase.
Sintaxis a partir de ES6:
class Cat { constructor(cat) { this.name = cat; } greet () { return 'Hola! Mis dueñ@s me llaman ' + this.name; } } const cat = new Cat("Michi");
Gracias por la clase, se entendió super bien :)
Por ahi escuche que cuando se trabaja con POO y se crea una clase, lo recomendable es que solo tenga un metodo segun la programacion funcional. Es asi o estoy diciendo cualquier cosa?
Aclaraciones:
En resumen, lo que escuchaste es una simplificación extrema. En la práctica:
La clave está en entender los principios detrás de cada paradigma y aplicarlos de manera que resulte en un código limpio, mantenible y adecuado para el problema que estás resolviendo.
Que buena respuesta Sandra! Gracias!
Resumen de la clase
los prototype son muy bonitos pero para eso llego ES6 aprender de aqui para atras no vale la pena prototype