Elcira Ibarra
EstudianteBrandon Lee Aguero Fernandez
EstudianteMarkin Piero Pulache Guarniz
EstudianteLEONARD CUENCA
EstudianteIrving Juárez
EstudianteMarkin Piero Pulache Guarniz
EstudianteDaniel Ochoa
EstudianteMaday Choque
EstudianteCarina Payleman
Estudiantekaren Meyhuay Zarzosa
EstudianteLuis Palomo
EstudianteSandra Rosa Arroyo Paredes
EstudianteLuis Palomo
EstudianteAna Rotela Cabrera
Estudiantefreddy conto mena
EstudianteConfirmo!
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