Componentes y pilares de la POO.
La Abstracción: La abstracción consiste en definir estructuras básicas de entidades u objetos del mundo real y sus interacciones, identificando los atributos y métodos esenciales y la omisión de los no esenciales. Con este componente trabajaremos con conceptos generales antes de precisar características específicas. Un ejemplo de esto puede ser los atributos de una figura geométrica que se compone de posicionX y posicionY y sus métodos son CalcularArea y CalcularPerimetro.
Encapsulamiento: El encapsulamiento es la capacidad de decidir qué partes de una clase (atributos y métodos) serán expuestas hacia otras entidades y cuáles se mantendrán ocultas. Este pilar busca controlar la visibilidad y accesibilidad de los detalles internos de una clase, manteniendo los datos privados dentro de una clase y accediendo a ellos solo mediante métodos públicos o directamente por el programador, evitando la modificación accidental de datos.
La Herencia: La Herencia permite que de una Clase ya definida, podamos heredar los atributos y métodos, donde a través de esa superclase o clase padre le provee los atributos y métodos a sus herederos o clases hijas. El objetivo de esto fomenta la reutilización de código y facilita la organización jerárquica de las clases, lo que establece una conexión inherente entre las clases, lo que ayuda a ver una estructura que refleja la relación lógica entre diferentes entidades. en conclusión, la herencia no solo ahorra tiempo al evitar redundancia en el código, sino que también establece una baso solida para la evolución y expansión del software cuando esta se renueve o crezca.
La herencia se podia explicar con el siguiente ejemplo, donde observamos que la clase Padre es "bicicleta", la cual cuenta con los atributos (marco, ruedas, manubrio) y el método (pantalla). De esta clase Padre, se creo una clase hija "Montaltbike", que hereda los atributos y métodos de la clase padre y adicional agrega los atributos (ad,at) y el método (pantallamontaltbike).
Se puede ver en el código que cuando creamos el objeto, nos pide los atributos de la clase Padre mas los nuevos de la clase Hija y se instancia el método de la clase hija.
El polimorfismo: El polimorfismo se destaca como el concepto o herramienta ingeniosa y esencial en programación orientada a objetos, ya que nos permite que una misma clase se comporte diferente según el tipo de objeto que lo invoque, lo que permite agregarle al diseño del código una flexibilidad, versatilidad y escalabilidad del código por su gran capacidad de adaptación y que pueda responder un código especifico a diferentes situaciones.

No hay comentarios:
Publicar un comentario