Actividad 7

Programación Orientada a Objetos POO

(bases de datos)

PHP Orientado a Objetos - Introducción. (2015, 20 julio). [Vídeo]. YouTube. https://www.youtube.com/watch?v=al-IPuaJ2MQ&t=327s&ab_channel=codigofacilito

Actividad

1.- Fundamentos de la Programación Orientada a Objetos

La POO tiene varios pilares para asegurar la simplicidad de código y su reutilización, y aunque diversos autores señalan diversos pilares, en este documento se considerarán los cuatro que son comunes en la mayoría de textos, estos son: Abstracción, Encapsulamiento, Herencia y Polimorfismo, las dos primeras están más relacionadas con la búsqueda de códigos simples y las dos siguientes con la reutilización. 

Fuente: Pilares | Fundamentos de la Programación Orientada a Objetos (utn.edu.ec)

Opinión propia

La programación orientada a objetos está basada en 4 características principales y más utilizada por todos los programadores en el mundo, que son:

Abstracción, encapsulamiento, herencia y polimorfismo.

Gracias a estas 4 características se puede obtener un código más limpio tanto visualmente, como al momento de comprenderse, no tan saturado; además de tener la posibilidad de reutilizarlo las veces que sea necesario.


2.- Beneficios de la Programación Orientada a Objeto

  • Reutilización del código.
  • Convierte cosas complejas en estructuras simples reproducibles.
  • Evita la duplicación de código.
  • Permite trabajar en equipo gracias al encapsulamiento ya que minimiza la posibilidad de duplicar funciones cuando varias personas trabajan sobre un mismo objeto al mismo tiempo.
  • Al estar la clase bien estructurada permite la corrección de errores en varios lugares del código.
  • Protege la información a través de la encapsulación, ya que solo se puede acceder a los datos del objeto a través de propiedades y métodos privados.
  • La abstracción nos permite construir sistemas más complejos y de una forma más sencilla y organizada.

Fuente: ¿Qué es la Programación Orientada a Objetos? (profile.es)


3.- Qué es la programación orientada a objetos

La Programación Orientada a Objetos (POO) es un paradigma de programación, es decir, un modelo o un estilo de programación que nos da unas guías sobre cómo trabajar con él. Se basa en el concepto de clases y objetos. Este tipo de programación se utiliza para estructurar un programa de software en piezas simples y reutilizables de planos de código (clases) para crear instancias individuales de objetos.

  Fuente: ¿Qué es la Programación Orientada a Objetos? (profile.es)

Opinión propia

Gracias a la POO podemos diseñar o implementar objetos de la vida real y cotidiana para así obtener la construcción de un software o programa informático.

A largo plazo es un beneficio muy grande, ya que nos evita la redundancia, repetición en nuestro código, permitiendo ahorrar mucho tiempo y brindando una mejor estructura.


4.- Métodos y atributos static en Programación Orientada a Objetos

Un Atributo static:

  • No es específico de cada objeto. Solo hay una copia del mismo y su valor es compartido por todos los objetos de la clase.
  • Podemos considerarlo como una variable global a la que tienen acceso todos los objetos de la clase.
  • Existe y puede utilizarse aunque no existan objetos de la clase.

Un Método static:

  • Tiene acceso solo a los atributos estáticos de la clase.
  • No es necesario instanciar un objeto para poder utilizarlo.


5.- Herencia en Programación Orientada a Objetos

La herencia define relaciones jerárquicas entre clases, de forma que atributos y métodos comunes puedan ser reutilizados. Las clases principales extienden atributos y comportamientos a las clases secundarias. A través de la definición en una clase de los atributos y comportamientos básicos, se pueden crear clases secundarias, ampliando así la funcionalidad de la clase principal y agregando atributos y comportamientos adicionales.

Volviendo al ejemplo de los animales, se puede usar una sola clase de animal y agregar un atributo de tipo de animal que especifique el tipo de animal. Los diferentes tipos de animales necesitarán diferentes métodos, por ejemplo, las aves deben poder poner huevos y los peces, nadan. Incluso cuando los animales tienen un método en común, como moverse, la implementación necesitaría muchas declaraciones «si» para garantizar el comportamiento de movimiento correcto. Por ejemplo, las ranas saltan, mientras que las serpientes se deslizan. El principio de herencia nos permite solucionar este problema.

Fuente: ¿Qué es la Programación Orientada a Objetos? (profile.es)

Fuente: https://miro.medium.com/max/2400/0*4uaEU8FHQaLL4NUL


Aporte propio

Gracias a la herencia, las otras clases que se pueden denominar "hijos", tienen la posibilidad de tomar los atributos o también pueden llamarse características del padre o clase maestra como se puede conocer en el campo de la programación y así hacer uso de ellos.


6.- Polimorfismo en Programación Orientada a Objetos

El polimorfismo consiste en diseñar objetos para compartir comportamientos, lo que nos permite procesar objetos de diferentes maneras. Es la capacidad de presentar la misma interfaz para diferentes formas subyacentes o tipos de datos. Al utilizar la herencia, los objetos pueden anular los comportamientos principales compartidos, con comportamientos secundarios específicos. El polimorfismo permite que el mismo método ejecute diferentes comportamientos de dos formas: anulación de método y sobrecarga de método.

Fuente: ¿Qué es la Programación Orientada a Objetos? (profile.es) 

Aporte propio

El polimorfismo al momento de programar es una característica de la POO demasiado útil, ya que nos ayuda mucho a evitar repetir código constantemente, ya que una misma función o método nos puede servir para realizar una acción a distintos objetos.


7.- Abstracción en Programación Orientada a Objetos

La abstracción es cuando el usuario interactúa solo con los atributos y métodos seleccionados de un objeto, utilizando herramientas simplificadas de alto nivel para acceder a un objeto complejo.

En la programación orientada a objetos, los programas suelen ser muy grandes y los objetos se comunican mucho entre sí. El concepto de abstracción facilita el mantenimiento de un código de gran tamaño, donde a lo largo del tiempo pueden surgir diferentes cambios.

Así, la abstracción se basa en usar cosas simples para representar la complejidad. Los objetos y las clases representan código subyacente, ocultando los detalles complejos al usuario. Por consiguiente, supone una extensión de la encapsulación. Siguiendo con el ejemplo del coche, no es necesario que conozcas todos los detalles de cómo funciona el motor para poder conducirlo.

Fuente: ¿Qué es la Programación Orientada a Objetos? (profile.es)

Fuente: 7.png (488×179) (googlegroups.com)

Aporte propio

Gracias a esta característica de la POO, el usuario puede interactuar con el objeto que le estamos presentando. El usuario no necesita saber cuál es el funcionamiento que está realizando dicho objeto por detrás, sino ver las características que lo están identificando.


8. Definir que es:

  • • CLASE: 

Una clase es una plantilla. Define de manera genérica cómo van a ser los objetos de un determinado tipo. Por ejemplo, una clase para representar a animales puede llamarse 'animal' y tener una serie de atributos, como 'nombre' o 'edad' (que normalmente son propiedades), y una serie con los comportamientos que estos pueden tener, como caminar o comer, y que a su vez se implementan como métodos de la clase (funciones). 

  • • METODO:

Son procedimientos y funciones que se invocan para actuar sobre los objetos y especifican cómo se ejecuta un mensaje. 

  • • ATRIBUTO:

Son una propiedad o característica que se puede asignar a un objeto (elemento). Mediante el uso de atributos se pueden asignar valores específicos a ciertos elementos. 

  • • OBJETO:

Un ejemplo sencillo de un objeto, como decíamos antes, podría ser un animal. Un animal tiene una edad, por lo que creamos un nuevo atributo de 'edad' y, además, puede envejecer, por lo que definimos un nuevo método. Datos y lógica. Esto es lo que se define en muchos programas como la definición de una clase, que es la definición global y genérica de muchos objetos.

Fuente: ¿Qué es la Programación Orientada a Objetos? (profile.es)

Fuente: https://profile.es/wp-content/media/POO.jpg

Aporte propio

En la POO se puede realizar la construcción de objetos de la vida diaria, pero para realizarlo se necesitan ciertas cosas que son:

  • Tener la clase del objeto: Lugar donde se construirá el objeto
  • Tener los métodos: Son los que nos van a  brindar las acciones que realizará dicho objeto
  • Tener los atributos: Son las características de dicho objeto

Todos estos requisitos conforman el objeto como sí, y nos permite poder construirlo.

 

9. Como se define en PHP:

  • Una clase (Sintaxis y ejemplo)
La definición básica de una clase comienza con la palabra reservada class, seguida de un nombre de clase, y continuando con un par de llaves que encierran las definiciones de las propiedades y métodos pertenecientes a dicha clase. 


  • El Método constructor (sintaxis y ejemplo)

Constructor

__construct ( mixed ...$values = "" ) : void

PHP permite a los desarrolladores declarar métodos constructores para las clases. Aquellas que tengan un método constructor lo invocarán en cada nuevo objeto creado, lo que lo hace idóneo para cualquier inicialización que el objeto pueda necesitar antes de ser usado.

Fuente: PHP: Constructores y destructores - Manual


  • Otros métodos (sintaxis y ejemplo)

Métodos mágicos 

Los nombres de los métodos: 

__construct(), __destruct(), __call(), __callStatic(), __get(), __set(), __isset(), __unset(), __sleep(), __wakeup(), __toString(), __invoke(), __set_state(), __clone() y __debugInfo() 

Son mágicos en las clases PHP. No se puede tener métodos con estos nombres en ninguna clase a menos que se desee la funcionalidad mágica asociada a estos.

© 2020 YUSEP RUIZ | Todos los derechos reservados
Creado con Webnode
¡Crea tu página web gratis! Esta página web fue creada con Webnode. Crea tu propia web gratis hoy mismo! Comenzar