Logo Studenta

T1 Tèllez González Jorge Luis

¡Estudia con miles de materiales!

Vista previa del material en texto

Programación Orientada a Objetos. Gpo: 01 - Tarea 1 · Téllez González Jorge Luis
1. Programación orientada a objetos: conceptos básicos.
Abstracción: Consiste en reconocer y enfocarse en las características esenciales de una situación o elemento a
modelar, ya sea físico o no. El proceso de abstracción requiere fijar las características que son únicamente de interés
en un determinado objeto y que, además, lo distinguen de otros objetos.
Figura 1: La abstracción genera la idea básica de un objeto y sus características de interés.
Clase: Corresponde a un modelo, plano o prototipo que describe los atributos y métodos de un posible tipo de objeto
o entidad. Dicho de otra forma, corresponde a la plantilla de un determinado objeto; esto incluye sus características
de interés y lo que puede realizarse con los objetos que sean creados a partir de la clase.
Figura 2: Las clases son los planos sobre los cuales se costruyen objetos.
Atributo: Es una característica de un objeto que tiene como propósito ayudar a definir su estructura. Así mismo,
los atributos permiten diferenciar unos objetos de otros. Se define con un identificador y un tipo de dato; el conjunto
de valores define al estado de un objeto.
Método: Definen el comportamiento general de un objeto, es decir, modelan las capacidades y operaciones que
pueden realizarse con un determinado tipo de objeto. Por ejemplo, una clase de bicicletas entre sus métodos puede
tener el "pedalear", "frenar", etc.
Objeto: Corresponde a la instancia individual de una clase. Los objetos creados a través de una clase ’plantilla’ po-
seen los atributos y métodos definidos por la clase creadora. Además, sus valores son individuales para cada objeto
creado. Pueden crearse tantos objetos como sean necesarios en un determinado marco de recursos de Hardware.
Instancia: La realización de una clase, o el uso de los ’planos’ que brinda una clase para construir un objeto se
identifica como ’instanciar una clase’.
1
Figura 3: Sintaxis para la creación de objetos en C, Java y Python.
Diagrama de clases: Es una representación gráfica y simbólica que tiene como objetivo describir a una clase, sus
atributos y sus métodos; definiendo con claridad los modificadores de acceso de las variables y métodos, el tipo de
dato de los atributos y el tipo de dato que devuelven los métodos. UML es un lenguaje de modelado que puede ser
utilizado con este propósito.
Figura 4: Diagrama de una clase en lenguaje UML.
Constructor: Es un método especial que se ejecuta al crear un objeto con el operador especial "new". Una de sus
carcterísticas especiales en Java es que se debe de llamar igual que la clase en la que se encuentra, además, es creado
por defecto y sin ningún parámetro. Así mismo, también pueden inicializarse los atributos de un objeto por medio
del constructor.
En el lenguaje Python la regla del nombre no necesariamente se aplica y, además, no se utiliza un operador especial
para crear un objeto.
Destructor: Método especial que se ejecuta, comunmente como un ’recolector de basura’ al término de la ejecución
de un programa con el propósito de liberar la memoria reservada, por ejemplo, a diferentes objetos creados en un
programa.
Modificadores de acceso: Permiten o limitan el acceso a determinados atributos o métodos de una clase. Un atributo
o un método ’public’ implica que cualquier otra clase ajena puedes modificar los atributos de un objeto creado con
la clase pública u otras clases pueden acceder a sus métodos. En cambio, un modificador de acceso ’private’ negará
el acceso los atributos y métodos, de la clase privada, a cualquier otra clase ajena.
Encapsulamiento: Corresponde a la protección de clases, de forma que los objetos creados a partir de una clase
encapsulada solo puedan ser manipulados de acuerdo a las directrices marcadas por esa misma clase. Un ejemplo de
directrices de este tipo se encuentran aplicadas en los métodos especiales ’get’ y ’set’, los cuales permiten recuperar
o modificar información de acuerdo a lo que dicte la clase protegida. El encapsulamiento protege la implementación
y la integridad de una clase.
2. Modificadores de acceso públicos y privados en lenguaje Python
A diferencia de Java, Python no cuenta con modificadores de acceso nativos para encapsular clases. En cambio, el acceso
a una variable o método se encuentra explícito en su nombre:
Por defecto todos los miembros de una clase de Python son ’públicos’, es decir, se puede acceder a cada elemento
fuera del entorno de la clase en la que fue definido.
2
Para que un método sea ’privado’ se debe de anteponer dos guiones bajos antes del nombre y no dejar que ter-
mine con los mismos dos guiones bajos. Esta misma regla aplica para la variables. A esto se le denomina "name
mangling". Los atributos que son ocultados de esta forma no son accesibles desde afuera de la clase donde fueron
definidos.
También existe la opción de ’proteger’ métodos o atributos de una forma más básica, lo cual se logra añadiendo
como sufijo un único guion bajo antes del nombre del atributo o método.
Figura 5: Encapsulamiento básico en Python por medio de name mangling.
Referencias
[1] Conceptos clave. Recuperado de: https://ferestrepoca.github.io/paradigmas-de-programacion/poo/
poo_teoria/concepts.html. Fecha de consulta: 05/02/2020.
[2] Interfaces, implementaciones y encapsulamiento. Recuperado de: https://pythonista.io/cursos/py111/
interfaces-implementaciones-y-encapsulamiento. Fecha de consulta: 05/02/2020.
[3] Python - public, private and protected Access Modifiers. Recuperado de: https://www.tutorialsteacher.com/
python/private-and-protected-access-modifiers-in-python. Fecha de consulta: 05/02/2020.
Los créditos de las fotografías pertenecen a sus respectivos autores. c©
LATEX
3
 https://ferestrepoca.github.io/paradigmas-de-programacion/poo/poo_teoria/concepts.html
 https://ferestrepoca.github.io/paradigmas-de-programacion/poo/poo_teoria/concepts.html
https://pythonista.io/cursos/py111/interfaces-implementaciones-y-encapsulamiento
https://pythonista.io/cursos/py111/interfaces-implementaciones-y-encapsulamiento
https://www.tutorialsteacher.com/python/private-and-protected-access-modifiers-in-python
https://www.tutorialsteacher.com/python/private-and-protected-access-modifiers-in-python
	Programación orientada a objetos: conceptos básicos.
	Modificadores de acceso públicos y privados en lenguaje Python

Continuar navegando

Materiales relacionados

74 pag.
GD3 - PHP

SIN SIGLA

User badge image

Yolibett Mendoza

12 pag.
Práctica 7 V2

UNAM

User badge image

Jorge Luis Tellez

34 pag.
POO1-2006 - Laura Rentería

User badge image

Desafio PASSEI DIRETO