Todos debemos entender que para tomar este curso hay que haber hecho el de PHP primero, este es un curso avanzado para programadores, que ademas esta muy bueno; mejor diría EXCELENTE, te felicito Carlos, tu explicación es tan minuciosa; tan detallada que no hace falta investigar en otro lado.
La diferencia entre abstracción e interfaces es que en abstracción debido a que se hace con clases, la clase hija no podrá extender a varias clases abstractas, mientras que en las interfaces podemos heredar a varias. Del resto son casi lo mismo...
Hola mucho gusto, bueno tengo una pregunta, ¿Desde el lado funcional en que es lo que mejora o ayuda esto al código, tanto Interfaces como clases abstractas? De paso aprovecho de felicitarlos por las clases y todo el aporte que hacen a la comunidad!
Clase Abstracta vs. Interfaz: -¿Pueden ambas tener métodos constructores? R = Sí. -¿Pueden ambas tener más de un atributo adicional en sus métodos? R = Sí, siempre y cuando se declaren ($atributo = 0), por ejemplo. -¿Los métodos declarados como abstractos en ambas tienen que heredarse obligatoriamente? R= Sí, y no sólo los abstractos, también los públicos. ¿CUÁL ES LA DIFERENCIA ENTONCES? R= LA INTERFAZ PERMITE HERENCIA MÚLTIPLE... Se pueden crear múltiples clases que hereden los mismos métodos de la interfaz con la palabra reservada "implements". ¡ES COMO TENER C++ EN PHP!
Te equivocas en realidad la interfaz aunque se puede utilizar para simular la herencia múltiple no es su objetivo y no es buena práctica, la diferencia es que la clase abstracta puede definir sus métodos, y las interfaces no lo pueden hacer, los métodos de las interfaces carecen de cuerpo.
hola gran tutorial,tengi mi duda en saber cuando usar las el metodo abstracto o usar las funciones privadas,publicas o protected ,me pierdo en esa parte de definir las funciones
Tengo una duda, dices y nos muestras que un metodo abstracto definido con un parametro al momento de implementarlo puede recibir parametros adicionales, lo mismo aplica para los metodos de una interface? o en las interfaces se tienen que implementar el metodo tal cual fue declarado?
Saludos, cuando crea la clase abstracta, por que en los metodos pone la palabra abstract, ya que si es clase abstracta, no seria ya considerado abstracto toda la clase, con sus metodos y propiedades.
Guillermo David Paredes Torrez Según lo que se en una clase abstracta puedes tener metodos abstractos y no abstractos, o sea que una clase abstracta no necesariamente debe tener metodos abstractos (aunque me parece absurdo) y al momento de tu crear un metodo abstracto la clase obligatoriamente tiene que ser abstracta, es por eso que tanto la clase como el metodo tienen que llevar la palabra reservada "abstract", saludos.
hello quisiera una ayuda como calcular el area de un cuadrado y un triangulo (ambas en archivos diferentes) y una class padre figura asi: pero no estoy seguro.....podrias ayudarme?
@@andresmontoya7852 Pues en la practica es muy importante el obligar que los métodos sigan ciertos métodos para que se cumplan los algoritmos que ya tengas planteados! Te explico en medida que van creciendo nuestros códigos tienes que ir haciendo una conducta lógica en ellos. Es ahí que los clases abstractas empiezan a ser necesarias!
NO ES HAIGAN!!! iba a felicitarte por el video😢 ...Una de las cosas importantes para ser un profesional es conocer el idioma, su ortografía y sus variantes a la hora de escribir y hablar!..Lo peor que esta mentira de "haigan" se ha repetido tantas veces que algunos ya optan por aceptarla
si funciono solo que le pasa como valor fernandes ejemplo $obj->ingresarNombre("Rodrigo","Garcia"); $nombre = "Rodrigo"; $username= "Garcia"; En caso de que no le pases ningun valor a $username va a tener el valor de cf por defecto como lo hizo en un principio
Pésimo video, el señor se enfoca más en que el código funcione dejando de lado la explicación de qué es y para que es una clase abstracta y un método. Por otro lado se nota no estar preparado para la grabación del video con ejemplos simples, vacila mucho aunque si se le nota dominio de la materia. Simple comentario !!!
Todos debemos entender que para tomar este curso hay que haber hecho el de PHP primero, este es un curso avanzado para programadores, que ademas esta muy bueno; mejor diría EXCELENTE, te felicito Carlos, tu explicación es tan minuciosa; tan detallada que no hace falta investigar en otro lado.
La diferencia entre abstracción e interfaces es que en abstracción debido a que se hace con clases, la clase hija no podrá extender a varias clases abstractas, mientras que en las interfaces podemos heredar a varias.
Del resto son casi lo mismo...
Carlos Muchas gracias por el curso, esta todo muy bien explicado y es fácil de entender.
Saludos,
Hola mucho gusto, bueno tengo una pregunta, ¿Desde el lado funcional en que es lo que mejora o ayuda esto al código, tanto Interfaces como clases abstractas?
De paso aprovecho de felicitarlos por las clases y todo el aporte que hacen a la comunidad!
fue de mucha ayuda
Clase Abstracta vs. Interfaz:
-¿Pueden ambas tener métodos constructores? R = Sí.
-¿Pueden ambas tener más de un atributo adicional en sus métodos? R = Sí, siempre y cuando se declaren ($atributo = 0), por ejemplo.
-¿Los métodos declarados como abstractos en ambas tienen que heredarse obligatoriamente? R= Sí, y no sólo los abstractos, también los públicos.
¿CUÁL ES LA DIFERENCIA ENTONCES?
R= LA INTERFAZ PERMITE HERENCIA MÚLTIPLE... Se pueden crear múltiples clases que hereden los mismos métodos de la interfaz con la palabra reservada "implements".
¡ES COMO TENER C++ EN PHP!
Eso es todo? Es la unica diferencia? para esto existe la clase abstracta?
y que tiene de especial la "interface" :/
Te equivocas en realidad la interfaz aunque se puede utilizar para simular la herencia múltiple no es su objetivo y no es buena práctica, la diferencia es que la clase abstracta puede definir sus métodos, y las interfaces no lo pueden hacer, los métodos de las interfaces carecen de cuerpo.
Hoy fui el primero en ver la clase, están buenas las clases, éxitos!
Genial, ahora si puedes mostrar los errores en consola, muy buen video :D
hola gran tutorial,tengi mi duda en saber cuando usar las el metodo abstracto o usar las funciones privadas,publicas o protected ,me pierdo en esa parte de definir las funciones
muy bien explicado solo una observacion el color rojo oscuro no se aprecia bien en los simbolos -
Creo q lo mejor que hubieras hecho es comparar los metodos abstractos con las interfaces -.-
Tengo una duda, dices y nos muestras que un metodo abstracto definido con un parametro al momento de implementarlo puede recibir parametros adicionales, lo mismo aplica para los metodos de una interface? o en las interfaces se tienen que implementar el metodo tal cual fue declarado?
+Professor Zoom tal cual fue declarado .-.
Cual recomiendas usar clases abstractas o interfaces?
***** Buenas noches, una duda aparte de exigir que una subclase tenga metodos de la superclase a fuerza definidos, que otro uso tienen gracias
when llegas a este video y tu profe estaba enfermo :(, gracias por enseñarnos (ya sabia esto desde java) pero necesito aprender mas php
Saludos, cuando crea la clase abstracta, por que en los metodos pone la palabra abstract, ya que si es clase abstracta, no seria ya considerado abstracto toda la clase, con sus metodos y propiedades.
Guillermo David Paredes Torrez Según lo que se en una clase abstracta puedes tener metodos abstractos y no abstractos, o sea que una clase abstracta no necesariamente debe tener metodos abstractos (aunque me parece absurdo) y al momento de tu crear un metodo abstracto la clase obligatoriamente tiene que ser abstracta, es por eso que tanto la clase como el metodo tienen que llevar la palabra reservada "abstract", saludos.
las clases abstractas se usan en el polimorfismo es decir se crea una funcion para luego ser usada en las distintas clases
hello quisiera una ayuda como calcular el area de un cuadrado y un triangulo (ambas en archivos diferentes) y una class padre figura asi: pero no estoy seguro.....podrias ayudarme?
Sigo sin entender la utilidad de las clases abstractas.
y yo de esa y las interfaces xd
@@andresmontoya7852 Pues en la practica es muy importante el obligar que los métodos sigan ciertos métodos para que se cumplan los algoritmos que ya tengas planteados! Te explico en medida que van creciendo nuestros códigos tienes que ir haciendo una conducta lógica en ellos. Es ahí que los clases abstractas empiezan a ser necesarias!
NO ES HAIGAN!!! iba a felicitarte por el video😢 ...Una de las cosas importantes para ser un profesional es conocer el idioma, su ortografía y sus variantes a la hora de escribir y hablar!..Lo peor que esta mentira de "haigan" se ha repetido tantas veces que algunos ya optan por aceptarla
No entiendo el sentido o el uso del último parámetro, de username.
por que es un atributo opcional, un parámetro que se le ocurrio jejej como segundo parámetro
Gracias amigo!
Xq cuando puso fernandes no funciono el parámetro opcional?
si funciono solo que le pasa como valor fernandes
ejemplo
$obj->ingresarNombre("Rodrigo","Garcia");
$nombre = "Rodrigo";
$username= "Garcia";
En caso de que no le pases ningun valor
a $username va a tener el valor de cf por defecto
como lo hizo en un principio
Pésimo video, el señor se enfoca más en que el código funcione dejando de lado la explicación de qué es y para que es una clase abstracta y un método. Por otro lado se nota no estar preparado para la grabación del video con ejemplos simples, vacila mucho aunque si se le nota dominio de la materia. Simple comentario !!!
porque no preparas la clase?, es decir creas el ejemplo en el momento lo que alarga el video y sea aburrido y poco creíble
fue de mucha ayuda