
Bien hoy veremos un segundo ejemplo utilizando interfaces agregado a lo que hemos visto en los post anteriores.
EL ejemplo se trata de como manejar objetos genericamente ya que sabemos que una clase puede implementar una interface y no tenemos que preocuparnos por los elementos internos o lo que hace esa clase solo con saber que interfaz implementa nos da una informacion especifica de que es lo que hace.
Lo que tratare de explicar es que nos podemos ahorrar mucho codigo pensando bien las cosas y usando las herramientas que nos da la POO en php , en si el ejemplo se basa en una situacion en que subiremos documentos a nuestro servidor , los documentos los subira cualquier departamento de X empresa , todos los documentos tienen las misma propiedades entre si lo unico que cambia es el nombre y la categoria y otras cosas mas .
Lo primero que debemos de hacer es una interfaz que declare los metodos a usar.
Interfaz


Clase de procesos

Por otro lado tenemos un metodo privado al cual le pasamos el objeto generico para que imprima los resultados viendo asi la encapsulacion del metodo que solo puede ser visible en esa clase .
Bien para que nos sirve esto para que a la hora de seguir expandiendo nuestro codigo osea a la hora de crear el departamento 2 no escribamos tanto codigo como vemos en la siguiente imagen.

La clase principal quedaria asi :


Bien no siempre lo generico es bueno asi que tendremos que identificar en nuestra aplicacion cuales serian los metodos genericos para ahorrarnos trabajo y tiempo el cual lo ocuparemos en otras cuestiones.
Descargar
Comenten no sean Bayuncos .
Hermano, muchas gracias por el tutorial. Es un ejemplo maravilloso donde se percibe con claridad el polimorfismo y el encapsulamiento, sin dejar de lado la alta cohesion que tienen los objetos
ResponderEliminar