Please enable JavaScript.
Coggle requires JavaScript to display documents.
ELEMENTOS PROGAMACION ORIENTADA OBJETOS - Coggle Diagram
ELEMENTOS PROGAMACION ORIENTADA OBJETOS
ABSTRACCION
proceso de interpretacion y diseño que implica reconocer y enfocarse en las caracteristicas importantes de una de una situacion u objeto para asi filtrar las particularidades de no mucha importancia
Abstracción de Entidades: Es un objeto que representa un modelo útil de una entidad que se desea.
Abstracción de Acciones: Un objeto que representa un conjunto de operaciones y todas ellas desempeñan funciones del mismo tipo.
Abstracción de Máquinas virtuales: Un objeto que agrupa operaciones, todas ellas virtuales, utilizadas por algún nivel superior de control u operaciones (entre ellos podríamos hablar de un circuito).
Abstracción de coincidencia: Un objeto que almacena un conjunto de operaciones que no tienen relación entre sí.
ENCAPSULAMIENTO
se denomina encapsulamiento al ocultamiento del estado, es decir, de los datos miembro, de un objeto de manera que sólo se puede cambiar mediante las operaciones definidas para ese objeto.
Cada objeto está aislado del exterior, es un módulo natural, y la aplicación entera se reduce a un agregado o rompecabezas de objetos.
Existen tres niveles de acceso para el encapsulamiento, los cuales son:
Público (Public): Todos pueden acceder a los datos o métodos de una clase que se definen con este nivel, este es el nivel más bajo, esto es lo que tu quieres que la parte externa vea.
Protegido (Protected): Podemos decir que estás no son de acceso público, solamente son accesibles dentro de su clase y por subclases.
Privado (Private): En este nivel se puede declarar miembros accesibles sólo para la propia clase.
HERENCIA
En orientación a objetos la herencia es el mecanismo fundamental para implementar la reutilización y extensibilidad del software. A través de ella los diseñadores pueden construir nuevas clases partiendo de una jerarquía de clases ya existente (comprobadas y verificadas) evitando con ello el rediseño, la modificación y verificación de la parte ya implementada.
Terminología importante:
Superclase: la clase cuyas características se heredan se conoce como superclase (o una clase base o una clase principal).
Subclase: la clase que hereda la otra clase se conoce como subclase (o una clase derivada, clase extendida o clase hija). La subclase puede agregar sus propios campos y métodos, además de los campos y métodos de la superclase.
Reutilización: la herencia respalda el concepto de “reutilización”, es decir, cuando queremos crear una clase nueva y ya hay una clase que incluye parte del código que queremos, podemos derivar nuestra nueva clase de la clase existente. Al hacer esto, estamos reutilizando los campos/atributos y métodos de la clase existente.
POLIMORFISMO
En programación orientada a objetos el polimorfismo se refiere a la capacidad para que varias clases derivadas de una antecesora utilicen un mismo método de forma diferente.
Tipos de polimorfismo
En la POO, hay dos tipos principales de polimorfismo: el polimorfismo de sobrecarga y el polimorfismo de sobreescritura.
Polimorfismo de sobrecarga: La sobrecarga de métodos es una técnica que permite que una clase tenga varios métodos con el mismo nombre, pero con diferentes parámetros. En tiempo de compilación, el compilador identifica el método adecuado a partir de los parámetros utilizados.
Polimorfismo de sobreescritura: La sobreescritura de métodos es una técnica que permite que una subclase redefina un método de su superclase. Esto significa que el método de la subclase reemplaza al método de la superclase y se ejecuta en su lugar cuando se llama al método.
MODULARIDAD
En programación modular, y más específicamente en programación orientada a objetos, se denomina Modularidad a la propiedad que permite subdividir una aplicación en partes más pequeñas (llamadas módulos), cada una de las cuales debe ser tan independiente como sea posible de la aplicación en sí y de las restantes partes.
La modularidad también tiene principios y son los siguientes:
Capacidad de descomponer un sistema complejo.
Recuerdas el principio de «Divide y Vencerás», en este procedimiento se realiza algo similar, ya qué descompones un sistema en subprogramas (recuerda llamarlos módulos), el problema en general lo divides en problemas más pequeños.
Capacidad de componer a través de sus módulos.Indica la posibilidad de componer el programa desde los problemas más pequeños complentado y resolviendo el problema en general, particularmente cuando se crea software se utilizan algunos módulos existentes para poder formar lo que nos sol
Comprensión de sistema en partes.