• Aprendiendo a crear páginas web en WordPress.
  • Aprendamos un poco sobre The Twelve-Factor App.
  • ¿Qué son las famosas cookies?, ¿Para qué sirven?, ¿Se comen?. Estas y otras dudas las podrás resolver con este árticulo.
  • AWS

    ¿Qué es Amazon Web Services?
  • ¿Para qué sirve Bootstrap? Este blog, en especial este Slide usa Bootstrap, descubre aquí cómo hacerlo tú.

¿Qué es la Programación orientada a Objetos? (POO)

 En esta ocasión vamos a hablar de un tema primordial el cual es... 🥁🥁🥁

LA PROGRAMACIÓN ORIENTADA A OBJETOS!!!

¿A qué nos referimos con orientada a objetos?, ¡siiii, lo se!, al principio yo también pensaba que era un tipo de programación que se especializa en la robótica y no todos los que pensaron eso están del todo equivocados, pero de eso hablaremos más adelante ahorita nos enfocaremos en lo primordial que debemos aprender de la POO.


¿Qué es la programación orientada a objetos?

La Programación Orientada a Objetos/ Object-Oriented Programming (POO/OOP), esta es una manera diferente de programar y con este tipo de programación nos podemos expresar de una manera más precisa a las cosas en la vida real a diferencia de otros tipos de programación.

Bueno, primero antes que nada debemos aprender a identificar ¿Qué es un objeto?, pues un objeto es aquel que tiene Atributos (Características), Métodos ( Acciones).

La mayoría de post ponen como ejemplo de un objeto a un coche ya que este cumple con los requisitos de tener Atributos y Métodos.


Pero también podemos usar como ejemplo una fracción como 8/8 ya que esta también cumple con tener Atributos (Numerador y Denominador) y Métodos ( Se puede simplificar, se puede sumar con otra fracción, se puede restar con otra fracción).

Ahora veamos ¿Qué son las clases?

Bueno pues una Clase es un conjunto de objetos que tienen 
atributos y métodos  similares.

En el caso de Java lo primero que creamos es una Clase y a partir de esta clase creamos los objetos con sus métodos y atributos, es importante saber que una vez que tenemos una clase podemos crear todos los objetos que queramos dentro de esta.

¿Qué es un mensaje en  la Programación Orientada a Objetos?

Es el que permite que los objetos interactúen, una vez que un objeto reciba un mensaje este cambiará su estado o la ejecución de alguna tarea.

Técnicas del sexenio:

Dentro de la programación orientada a objetos se utilizan las "Técnicas del sexenio" la cuales son: Herencia, Cohesión, Acoplamiento, Abstracción, Polimorfismo y Encapsulamiento. 

Y para que no se queden con la duda les daré una explicación simple de cada una 

HERENCIA:

Es el mecanismo en el que una clase hereda los atributos y métodos de otra clase, la herencia facilita la reutilización de código y es un concepto importante de la POO.

COHESION:

Hace referencia a todo sobre como se diseña una sola clase, el termino cohesión hace saber que cierta clase se hizo con un propósito único y los elementos dentro de este modulo permanecen juntos.
Siempre que el acoplamiento se reduce se incrementa la cohesión.

ACOPLAMIENTO:

Este se refiere al grado de conocimiento directo que tiene un elemento de otro, una medida de cuán estrechamente conectadas están dos rutinas o módulos.

ABSTRACCIÓN:

La abstracción es la que muestra solo los atributos necesarios y esconde la información que no es necesaria.


POLIMORFISMO:

Ocurre cuando hay una o más clases u objetos relacionados entre sí por herencia.
En pocas palabras es la habilidad de un objeto o clase para tomar muchas formas.

Y por último pero no por eso menos importante:

ENCAPSULAMIENTO:

Hace referencia a la agrupación de datos, incluyendo los métodos que operan estos, pero en una sola unidad 

Incluso algunos lenguajes de programación utilizan el encapsulamiento en forma de clases.


Esto solo fue una pequeña explicación sobre cada una de estas técnicas pero más adelante haré una explicación más detallada sobre cada uno incluyendo ejemplos e imágenes. 😉


Ahora vamos con los lenguajes de programación que ocupan la programación orientada a objetos.

En si el termino de Programación Orientada a Objetos fue creado por Alan Kay y este se inspiró en el programa de Sketchpad, pero el primer lenguaje que se reconoció como orientado a objetos fue Simula, posteriormente Alan Kay junto con otros programadores crearon Smalltalk.
 Actualmente los lenguajes más conocidos que utilizan Programación Orientada a Objetos son:

Phyton 
Javascript
Ruby
Scala
PHP
Java
C++

Entre otros...