Mind map
Principios de la POO
Map content
Principios de la POO
la POO (Programacion orientada a Objetos) permite asignar metodos, atributos a una clase hija, una manera de programar específica, donde se organiza el código en unidades denominadas clases, de las cuales se crean objetos que se relacionan entre sí para conseguir los objetivos de las aplicaciones.
- OBJETOS
- Entidad provista de un conjunto de propiedades o atributos (datos) y de comportamiento o funcionalidad (métodos) los mismos que consecuentemente reaccionan a eventos. Se corresponde con los objetos reales del mundo que nos rodea, o a objetos internos del sistema (del programa). Es una instancia a una clase.
- Entonces podemos definir a un objeto en POO, como un conjunto de datos y funciones relacionadas. A las funciones de los objetos, tales como acelerar en el caso del auto, de aquí en más las llamaremos métodos, a los datos los llamaremos atributos.
- Los objetos en programación, son modelados observando objetos del mundo real, por ejemplo implementamos el objeto "perro" dentro de nuestro programa definiendo los atributos y métodos del objeto perro real.
- Entonces podemos definir a un objeto en POO, como un conjunto de datos y funciones relacionadas. A las funciones de los objetos, tales como acelerar en el caso del auto, de aquí en más las llamaremos métodos, a los datos los llamaremos atributos.
- Entidad provista de un conjunto de propiedades o atributos (datos) y de comportamiento o funcionalidad (métodos) los mismos que consecuentemente reaccionan a eventos. Se corresponde con los objetos reales del mundo que nos rodea, o a objetos internos del sistema (del programa). Es una instancia a una clase.
- CLASES
- Conjunto de datos y métodos. Conjunto de reglas de creación y comportamiento de los objetos.
- CLASE ABSTRACTA: Clase de apoyo, que construimos solo para derivar de ella otras clases, pero de la que no se puede hacer ninguna instanciación., también llamada clase virtual.
- CLASE BASE: Llamamos así a la clase que se halla al inicio del árbol de las jerarquías de clases. La raíz de ese árbol es la clase base o superclase
- CLASE COMPUESTA: Véase bajo Clase contenedora
- CLASE CONTENEDORA: Al hecho de crear nuevas clases utilizando otras clases como componentes, se le llama composición, y a la clase compuesta se le llama contenedora.
- CLASE DERIVADA: Una clase deriva de otra cuando hemos aplicado la herencia de una sobre otra. La clase B deriva de la clase A cuando B hereda los datos y métodos de A.
- CLASE PADRE: La clase de la cual otra deriva directamente. Decimos que la clase A es padre de la clase B si B deriva directamente de A (está conectada directamente en el árbol de jerarquías de las clases).
- CLASE HIJA: Clase que es derivada directamente de otra. Decimos que la clase B es hija de la clase A si B deriva directamente de A (está conectada directamente en el árbol de jerarquías de las clases).
- CLASE PADRE: La clase de la cual otra deriva directamente. Decimos que la clase A es padre de la clase B si B deriva directamente de A (está conectada directamente en el árbol de jerarquías de las clases).
- CLASE DERIVADA: Una clase deriva de otra cuando hemos aplicado la herencia de una sobre otra. La clase B deriva de la clase A cuando B hereda los datos y métodos de A.
- CLASE CONTENEDORA: Al hecho de crear nuevas clases utilizando otras clases como componentes, se le llama composición, y a la clase compuesta se le llama contenedora.
- CLASE COMPUESTA: Véase bajo Clase contenedora
- CLASE BASE: Llamamos así a la clase que se halla al inicio del árbol de las jerarquías de clases. La raíz de ese árbol es la clase base o superclase
- CLASE ABSTRACTA: Clase de apoyo, que construimos solo para derivar de ella otras clases, pero de la que no se puede hacer ninguna instanciación., también llamada clase virtual.
- Conjunto de datos y métodos. Conjunto de reglas de creación y comportamiento de los objetos.
- METODOS
- Algoritmo asociado a un objeto (o a una clase de objetos), cuya ejecución se desencadena tras la recepción de un "mensaje". Desde el punto de vista del comportamiento, es lo que el objeto puede hacer. Un método puede producir un cambio en las propiedades del objeto, o la generación de un "evento" con un nuevo mensaje para otro objeto del sistema.
- Los métodos cuentan con un espacio de nombres propio. En caso de no encontrar un nombre en su ámbito local, buscará en el ámbito superior hasta encontrar alguna coincidencia. Los métodos pueden acceder y crear atributos dentro del objeto al que pertenecen, anteponiendo la palabra self y el operador de atributo ”.” antes del nombre del atributo en cuestión.
- METODOS ESPECIALES: Las clases en Python cuentan con múltiples métodos especiales, los cuales se encuentran entre dobles guiones bajos __<metodo>__(). Los métodos especiales más utilizados son __init__(), __str__() y __del__().
- metodos estatics. Para definir un método estático se utiliza el decorador @staticmethod y no utiliza ningún argumento inicial. Al no utilizar self, los métodos estáticos no pueden interactuar con los atributos y métodos de la instancia. Para referirse a los elementos de la clase, se debe utilizar el nombre de la clase como prefijo.
- ATRIBUTOS O PROPIEDAD
- Los atributos o propiedades de los objetos son las características que puede tener un objeto, como el color. Si el objeto es Persona, los atributos podrían ser: cedula, nombre, apellido, sexo, etc...
- ATRIBUTOS O PROPIEDAD
- metodos estatics. Para definir un método estático se utiliza el decorador @staticmethod y no utiliza ningún argumento inicial. Al no utilizar self, los métodos estáticos no pueden interactuar con los atributos y métodos de la instancia. Para referirse a los elementos de la clase, se debe utilizar el nombre de la clase como prefijo.
- METODOS ESPECIALES: Las clases en Python cuentan con múltiples métodos especiales, los cuales se encuentran entre dobles guiones bajos __<metodo>__(). Los métodos especiales más utilizados son __init__(), __str__() y __del__().
- Los métodos cuentan con un espacio de nombres propio. En caso de no encontrar un nombre en su ámbito local, buscará en el ámbito superior hasta encontrar alguna coincidencia. Los métodos pueden acceder y crear atributos dentro del objeto al que pertenecen, anteponiendo la palabra self y el operador de atributo ”.” antes del nombre del atributo en cuestión.
- Algoritmo asociado a un objeto (o a una clase de objetos), cuya ejecución se desencadena tras la recepción de un "mensaje". Desde el punto de vista del comportamiento, es lo que el objeto puede hacer. Un método puede producir un cambio en las propiedades del objeto, o la generación de un "evento" con un nuevo mensaje para otro objeto del sistema.
- CARACTERISTICAS
- HERENCIA: La herencia es una de las premisas y técnicas de la POO la cual permite a los programadores crear una clase general primero y luego más tarde crear clases más especializadas que re-utilicen código de la clase general. La herencia también le permite escribir un código más limpio y legible.
- HERENCIA SIMPLE:La herencia simple se apoya en el uso de clases base para compartir sus atributos y comportamientos con otros clases derivadas como los siguiente ejemplos el objeto Supervisor y el objeto Obrero.
- HERENCIA MULTIPLE: A diferencia de lenguajes como Java y C#, el lenguaje Python permite la herencia múltiple, es decir, se puede heredar de múltiples clases. La herencia múltiple es la capacidad de una subclase de heredar de múltiples súper clases. Esto conlleva un problema, y es que si varias súper clases tienen los mismos atributos o métodos, la subclase sólo podrá heredar de una de ellas.
- HERENCIA SIMPLE:La herencia simple se apoya en el uso de clases base para compartir sus atributos y comportamientos con otros clases derivadas como los siguiente ejemplos el objeto Supervisor y el objeto Obrero.
- POLIMORFISMO: Comportamientos diferentes, asociados a objetos distintos, pueden compartir el mismo nombre, al llamarlos por ese nombre se utilizará el comportamiento correspondiente al objeto que se esté usando. O dicho de otro modo, las referencias y las colecciones de objetos pueden contener objetos de diferentes tipos, y la invocación de un comportamiento en una referencia producirá el comportamiento correcto para el tipo real del objeto referenciado. Cuando esto ocurre en "tiempo de ejecución", esta última característica se llama asignación tardía o asignación dinámica. Algunos lenguajes proporcionan medios más estáticos (en "tiempo de compilación") de polimorfismo, tales como las plantillas y la sobrecarga de operadores de C++.
- ENCAPSULAMIENTO: Significa reunir a todos los elementos que pueden considerarse pertenecientes a una misma entidad, al mismo nivel de abstracción. Esto permite aumentar la cohesión de los componentes del sistema. Algunos autores confunden este concepto con el principio de ocultación, principalmente porque se suelen emplear conjuntamente.
- PRIVADO: PUEDE SER VISTO POR CUALQUIER OBJETO DENTRO DEL PROGRAMA
- PRIVADO: PUEDE SER VISTO POR LAS CLASES PADRE
- PROTEGIDO: PUEDE SER VSTO POR LOS OBJETOS DE SI MISMO ( METODOS ACCESORES9
- PRIVADO: PUEDE SER VISTO POR LAS CLASES PADRE
- PRIVADO: PUEDE SER VISTO POR CUALQUIER OBJETO DENTRO DEL PROGRAMA
- HERENCIA: La herencia es una de las premisas y técnicas de la POO la cual permite a los programadores crear una clase general primero y luego más tarde crear clases más especializadas que re-utilicen código de la clase general. La herencia también le permite escribir un código más limpio y legible.
- OBJETOS
Information
- Description
- Mind Map on Principios de la POO, created by Juan Manuel PEDRAZA ALVARADO on 15/08/2020.
- Created by
- Juan Manuel PEDRAZA ALVARADO · Aug 2020
- Updated
- Aug 15, 2020
- Views
- 2
- Rating