SlideShare a Scribd company logo
CLASE Y OBJETOS
EN PYTHON
Mg. Richard E. Mendoza G.
Ole-Johan Dahl y Kristen Nygaard
● 1960s -> Simula
● 1970s -> SmallTalk
● 1980s -> C++, Eiffel
● 1990s -> Java
● 2000s -> C#, VB.NET,
Processing
● Actualidad -> Implementación
en lenguajes como Javascript
Historia POO
4. Uso de objetos y módulos
● La programación orientada a objetos es un paradigma de
programación que otorga los medios para estructurar
programas de tal manera que las propiedades y
comportamientos estén envueltos en objetos
individuales
○ En pocas palabras, es un enfoque que nos permite modelar objetos concretos y del
mundo real y las relaciones entre ellos
● Los principios básicos son:
○ Encapsulation
○ Abstraction
○ Inheritance
○ Polyphormism
● Todos los objetos son una instancia de una clase
¿Qué es POO?
● Los tipos básicos en Python
(str, int, bool, etc.) están
diseñados para representar
cosas simples
● Cuando necesitamos crear
estructuras más complejas (por
ejemplo, un hotel), podemos
utilizar clases
● La instancia es el objeto concreto
con valores reales
¿Qué es POO?
class Hotel:#keyword class
pass
#instancia constructor de la clase.
hotel = Hotel()
● Mejor organización a través de
pequeños bloques de código.
● Es más limpio y por ende más
fácilmente legible.
● Facilita el mantenimiento del código.
● Permite Reusar código sin reescribir.
● Abstracción y Encapsulación.
● Herencia y Polimorfismo.
Beneficios de POO
La clase es un modelo o prototipo
que define las variables y métodos
comunes a todos los objetos de
cierta clase.
● Plantilla genérica para un
conjunto de objetos de similares
características.
● Se pueden crear numerosos
objetos de una misma clase.
● Desde la perspectiva del
lenguaje, la clase es un tipo de
variable.
El nombre de la clase se escribe en Singular y en CamelCase
Clase
# definición de clase
class <nombre_clase>(<super_clase>):
def __init__(self,<params>):
<expresion>
def <nombre_metodo>(self,<params>):
<expresion>
● Un objeto es una unidad que
engloba en sí mismo características
y comportamiento necesarias para
procesar información. Cada objeto
contiene datos y funciones.
● Es una instancia de un clase.
● Variables en memoria que contienen
el objeto creado a partir de la clase
(plantilla)
Objetos
class Persona:
def init(self, nombre, edad):
self.nombre = nombre
self.edad = edad
def saluda(self, otra_persona):
return f'Hola {otra_persona.nombre,
me llamo {self.nombre}.'
david = Persona('David', 35)
erika = Persona('Erika', 32)
david.saluda(erika) #'Hola Erika, me
llamo David’
● Todas las clases crean objetos y
todos los objetos tienen
atributos. Utilizamos el método
especial __init__ para definir el
estado inicial de nuestra
instancia. Recibe como primer
parámetro obligatorio self (que
es simplemente una referencia a
la instancia).
Atributos de la Instancia
class Hotel:
def __init__(self,
numero_maximo_de_huespedes,
lugares_de_estacionamiento):
self.numero_maximo_de_huespedes =
numero_maximo_de_huespedes
self.lugares_de_estacionamiento =
lugares_de_estacionamiento
hotel =
Hotel(numero_maximo_de_huespedes=50,
lugares_de_estacionamiento=20)
print(hotel.lugares_de_estacionamien
to) # 20
● Características intrínsecas del
objeto.
● Básicamente son las variables del
objeto, solo que técnicamente
pasan a llamarse propiedades o
atributos
Propiedades
● Acciones que puede realizar el
objeto.
● Forma de comunicarse con
objetos.
● Se pueden pasar parámetros a
las funciones en forma de
variables.
Métodos
class Hotel:
...
def anadir_huespedes(self,
cantidad_de_huespedes):
self.huespedes += cantidad_de_huespedes
def checkout(self,
cantidad_de_huespedes):
self.huespedes -= cantidad_de_huespedes
def ocupacion_total(self):
return self.huespedes
hotel = Hotel(50, 20)
hotel.anadir_huespedes(3)
hotel.checkout(1)
hotel.ocupacion_total() # 2
class Vehiculo:
def __init__(self, placa, marca, modelo):
self.placa=placa
self.marca=marca
def getPlaca(self):#METODOS ACCESORES
return self.placa
def getMarca(self):
return self.marca
def mostrarVehiculo(self):#METODOS TRANSACCIONAL
print('Placa:'+self.getPlaca()
+'Marca:'+self.getMarca())
placa=input('Ingrese placa:') #INGRESAR VARIABLES
marca=input('Ingrese marca:')
carro=Vehiculo(placa,marca) #INSTANCIAR UN OBJETO
carro.mostrarVehiculo()
● Característica de la POO que consiste en crear varios métodos con el
mismo nombre pero con diferentes listas de parámetro.
● Cada método sobrecargado es diferenciado al compilar y se ejecuta
el método con la lista de parámetros correspondiente.
Sobrecarga de Métodos
● Enfocarnos en la información
relevante.
● Separar la información
central de los detalles
secundarios.
● Podemos utilizar variables y
métodos (privados o
públicos)
Abstracción
class Lavadora:
def __init__(self):
pass
def lavar(self, temperatura='caliente'):
self._llenar_tanque_de_agua(temperatura)
self._lavar()
def _llenar_tanque_de_agua(self,
temperatura):
print(f'Llenando el tanque con agua
{temperatura}')
def _lavar(self):
print('Lavando la ropa')
lavadora = Lavadora()
lavadora.lavar()
● Permite agrupar datos y su
comportamiento.
● Controla el acceso a dichos
datos.
● Previene modificaciones no
autorizadas.
Encapsulación
class Empleado:
def__init__(self, nombre, apellido):
self.nombre = nombre
self.apellido = apellido
@property
def nombreCompleto(self):
return'{}.{}'.format(self.nombre,
self.apellido)
@fullname.setter
def nombreCompleto(self, name):
nombre, apellido = nombre.split(" ")
self.nombre = nombre
self.apellido = apellido
emp_1 = Empleado('Pepe', 'Perez')
print(emp_1.nombreCompleto)
● Permite modelar una jerarquía
declases.
● Permite compartir
comportamiento común en la
jerarquía.
● Al padre se le conoce como
superclase y al hijo como
subclase.
class Rectangulo:
def __init__(self, base, altura):
self.base = base
self.altura = altura
def area(self):
return self.base * self.altura
class Cuadrado(Rectangulo):
def __init__(self, lado):
super().__init__(lado, lado)
if __name__ == '__main__':
rectangulo = Rectangulo(base=3, altura=4)
print(rectangulo.area())
cuadrado = Cuadrado(lado=5)
print(cuadrado.area())
Herencia
● La habilidad de tomar
variasformas.
● En Python, nos permite
cambiar el
comportamiento de una
superclase para
adaptarloalasubclase.
class Persona:
def __init__(self, nombre):
self.nombre = nombre
def avanza(self):
print('Ando caminando')
class Ciclista(Persona):
def __init__(self, nombre):
super().__init__(nombre)
def avanza(self):
print('Ando moviendome en mi bicicleta')
persona = Persona('David')
persona.avanza()
ciclista = Ciclista('Daniel')
ciclista.avanza()
Polimorfismo
class Estudiante:
#METODO CONSTRUCTOR
def __init__(self, nombres, apellidos, cedula,carrera,edad):
self.nombres=nombres
self.apellidos=apellidos
self.cedula=cedula
self.carrera=carrera
self.edad=edad
#METODOS DE ACCESO
def getNombres(self):
return self.nombres
def getApellidos(self):
return self.apellidos
def getCedula(self):
return self.cedula
def getCarrera(self):
return self.carrera
def getEdad(self):
return self.edad
#METODOS TRANSACCIONALES
def imprimirEstudiante(self):
print('nNombres:'+self.getNombres())
nombres=input('Ingresar nombres:')
apellidos=input('Ingresar apellidos:')
cedula=input('Ingresar cédula:')
carrera=input('Ingresar carrera:')
edad=input('Ingresar edad:')
estudiante1=Estudiante(nombres,apellidos,cedula,carrera,edad)
estudiante1.imprimirEstudiante()
"Programar es entender"
"El idioma mundial es el inglés
hablado por extranjeros”
Kristen Nygaard

More Related Content

What's hot

Notacion Asintotica
Notacion AsintoticaNotacion Asintotica
Notacion Asintotica
Juan Zamora, MSc. MBA
 
Partes de la pantalla de eclipse
Partes de la pantalla de eclipsePartes de la pantalla de eclipse
Partes de la pantalla de eclipse
lourdes9898
 
Arreglos Bidimensionales - Java - NetBeans
Arreglos Bidimensionales - Java - NetBeansArreglos Bidimensionales - Java - NetBeans
Arreglos Bidimensionales - Java - NetBeans
Daniel Gómez
 
Unidad 4: Polimorfismo Ejercicio 4
Unidad 4: Polimorfismo Ejercicio 4Unidad 4: Polimorfismo Ejercicio 4
Unidad 4: Polimorfismo Ejercicio 4
Fabiola Valerio Ramirez
 
Programación 3: listas y conjuntos en java
Programación 3: listas y conjuntos en javaProgramación 3: listas y conjuntos en java
Programación 3: listas y conjuntos en java
Angel Vázquez Patiño
 
Algoritmo variables, constantes, tipos de datos y asignacion
Algoritmo variables, constantes, tipos de datos y asignacionAlgoritmo variables, constantes, tipos de datos y asignacion
Algoritmo variables, constantes, tipos de datos y asignacion
Boris Salleg
 
Memoria dinamica
Memoria dinamicaMemoria dinamica
Estructuras de datos lineales
Estructuras de datos linealesEstructuras de datos lineales
Estructuras de datos lineales
Alvaro Enrique Ruano
 
Programacion orientada a objetos Java
Programacion orientada a objetos JavaProgramacion orientada a objetos Java
Programacion orientada a objetos Java
Alexander Ramirez Melendez
 
1.7. técnicas de agrupación
1.7.  técnicas de agrupación1.7.  técnicas de agrupación
1.7. técnicas de agrupación
ITCM
 
Introducción a los modelos de datos
Introducción a los modelos de datosIntroducción a los modelos de datos
Introducción a los modelos de datos
Galo Anzules
 
Metodos Get y Set, finalmente revelados.
Metodos Get y Set, finalmente revelados.Metodos Get y Set, finalmente revelados.
Metodos Get y Set, finalmente revelados.
Juan Carlos Espinoza
 
Estructura de Datos - Unidad 4 Estructuras no lineales
Estructura de Datos - Unidad 4 Estructuras no linealesEstructura de Datos - Unidad 4 Estructuras no lineales
Estructura de Datos - Unidad 4 Estructuras no lineales
José Antonio Sandoval Acosta
 
Manual de practicas de Open GL
Manual de practicas de Open GLManual de practicas de Open GL
Manual de practicas de Open GL
Alincita Simon
 
Herencia - Programación Orientada a Objetos
Herencia - Programación Orientada a ObjetosHerencia - Programación Orientada a Objetos
Herencia - Programación Orientada a Objetos
Mario Villaseñor
 
Manejo de memoria
Manejo de memoriaManejo de memoria
Manejo de memoria
Valentin Manzano
 
Generación de documentación con star UML
Generación de documentación con star UMLGeneración de documentación con star UML
Generación de documentación con star UML
Software Guru
 
Calculadora con operaciones básicas en java
Calculadora con operaciones básicas en javaCalculadora con operaciones básicas en java
Calculadora con operaciones básicas en java
Pablo Alejandro Zapata Mahecha
 
POO: Herencia, Abstraccion y Polimorfismo
POO: Herencia, Abstraccion y PolimorfismoPOO: Herencia, Abstraccion y Polimorfismo
POO: Herencia, Abstraccion y Polimorfismo
Actimel
 
Ordenamiento con árbol binario
Ordenamiento con árbol binarioOrdenamiento con árbol binario
Ordenamiento con árbol binario
edwinosuna
 

What's hot (20)

Notacion Asintotica
Notacion AsintoticaNotacion Asintotica
Notacion Asintotica
 
Partes de la pantalla de eclipse
Partes de la pantalla de eclipsePartes de la pantalla de eclipse
Partes de la pantalla de eclipse
 
Arreglos Bidimensionales - Java - NetBeans
Arreglos Bidimensionales - Java - NetBeansArreglos Bidimensionales - Java - NetBeans
Arreglos Bidimensionales - Java - NetBeans
 
Unidad 4: Polimorfismo Ejercicio 4
Unidad 4: Polimorfismo Ejercicio 4Unidad 4: Polimorfismo Ejercicio 4
Unidad 4: Polimorfismo Ejercicio 4
 
Programación 3: listas y conjuntos en java
Programación 3: listas y conjuntos en javaProgramación 3: listas y conjuntos en java
Programación 3: listas y conjuntos en java
 
Algoritmo variables, constantes, tipos de datos y asignacion
Algoritmo variables, constantes, tipos de datos y asignacionAlgoritmo variables, constantes, tipos de datos y asignacion
Algoritmo variables, constantes, tipos de datos y asignacion
 
Memoria dinamica
Memoria dinamicaMemoria dinamica
Memoria dinamica
 
Estructuras de datos lineales
Estructuras de datos linealesEstructuras de datos lineales
Estructuras de datos lineales
 
Programacion orientada a objetos Java
Programacion orientada a objetos JavaProgramacion orientada a objetos Java
Programacion orientada a objetos Java
 
1.7. técnicas de agrupación
1.7.  técnicas de agrupación1.7.  técnicas de agrupación
1.7. técnicas de agrupación
 
Introducción a los modelos de datos
Introducción a los modelos de datosIntroducción a los modelos de datos
Introducción a los modelos de datos
 
Metodos Get y Set, finalmente revelados.
Metodos Get y Set, finalmente revelados.Metodos Get y Set, finalmente revelados.
Metodos Get y Set, finalmente revelados.
 
Estructura de Datos - Unidad 4 Estructuras no lineales
Estructura de Datos - Unidad 4 Estructuras no linealesEstructura de Datos - Unidad 4 Estructuras no lineales
Estructura de Datos - Unidad 4 Estructuras no lineales
 
Manual de practicas de Open GL
Manual de practicas de Open GLManual de practicas de Open GL
Manual de practicas de Open GL
 
Herencia - Programación Orientada a Objetos
Herencia - Programación Orientada a ObjetosHerencia - Programación Orientada a Objetos
Herencia - Programación Orientada a Objetos
 
Manejo de memoria
Manejo de memoriaManejo de memoria
Manejo de memoria
 
Generación de documentación con star UML
Generación de documentación con star UMLGeneración de documentación con star UML
Generación de documentación con star UML
 
Calculadora con operaciones básicas en java
Calculadora con operaciones básicas en javaCalculadora con operaciones básicas en java
Calculadora con operaciones básicas en java
 
POO: Herencia, Abstraccion y Polimorfismo
POO: Herencia, Abstraccion y PolimorfismoPOO: Herencia, Abstraccion y Polimorfismo
POO: Herencia, Abstraccion y Polimorfismo
 
Ordenamiento con árbol binario
Ordenamiento con árbol binarioOrdenamiento con árbol binario
Ordenamiento con árbol binario
 

Similar to Semana 6 Módulos Clases y Objetos

Programación Orientada a Objetos
Programación Orientada a ObjetosProgramación Orientada a Objetos
Programación Orientada a Objetos
Zamantha Gonzalez Universidad Nacional Abierta
 
programacion orientada a objetos
programacion orientada a objetosprogramacion orientada a objetos
programacion orientada a objetos
jent46
 
8.clases y objetos en c++
8.clases y objetos en c++8.clases y objetos en c++
8.clases y objetos en c++
Ramiro Estigarribia Canese
 
Guia poo php
Guia poo phpGuia poo php
Guia poo php
lissette_torrealba
 
Programming oriented to objects
Programming oriented to objectsProgramming oriented to objects
Programming oriented to objects
Diego De Santiago Ruiz
 
Clases y objetos en Java
Clases y objetos en JavaClases y objetos en Java
Clases y objetos en Java
Daniel Gomez Jaramillo
 
Programación 3: Clases y objetos en Java
Programación 3: Clases y objetos en JavaProgramación 3: Clases y objetos en Java
Programación 3: Clases y objetos en Java
Angel Vázquez Patiño
 
Propiedades De La Poo
Propiedades De La PooPropiedades De La Poo
Propiedades De La Poo
da4
 
16 17 tecnologias python oop
16 17 tecnologias python oop16 17 tecnologias python oop
16 17 tecnologias python oop
Software Guru
 
Presentación Base de Datos Slideshare
Presentación Base de Datos Slideshare Presentación Base de Datos Slideshare
Presentación Base de Datos Slideshare
Thomas Dario Ramos Andrade
 
Bd oo presentacion
Bd oo presentacionBd oo presentacion
Bd oo presentacion
sebastian928481
 
Introducción a la programación en Python (día 2)
Introducción a la programación en Python (día 2)Introducción a la programación en Python (día 2)
Introducción a la programación en Python (día 2)
CodeSyntax
 
[ES] Programación orientada a objeto con java
[ES] Programación orientada a objeto con java[ES] Programación orientada a objeto con java
[ES] Programación orientada a objeto con java
Eudris Cabrera
 
Apunte paradigma orientado a objetos
Apunte paradigma orientado a objetosApunte paradigma orientado a objetos
Apunte paradigma orientado a objetos
Alejandro Canosa
 
JAVA ORIENTADO A OBJETOS - INTRODUCCIÓN
JAVA ORIENTADO A OBJETOS - INTRODUCCIÓNJAVA ORIENTADO A OBJETOS - INTRODUCCIÓN
JAVA ORIENTADO A OBJETOS - INTRODUCCIÓN
Eric Gustavo Coronel Castillo
 
Programación Orientada a Objetos - Unidad 2: clases y objetos
Programación Orientada a Objetos - Unidad 2: clases y objetosProgramación Orientada a Objetos - Unidad 2: clases y objetos
Programación Orientada a Objetos - Unidad 2: clases y objetos
José Antonio Sandoval Acosta
 
Unidad 2 ProgramacióN Orientada A Objetos (Repaso)
Unidad 2 ProgramacióN Orientada A Objetos (Repaso)Unidad 2 ProgramacióN Orientada A Objetos (Repaso)
Unidad 2 ProgramacióN Orientada A Objetos (Repaso)
Sergio Sanchez
 
Definición de clases en POO
Definición de clases en POODefinición de clases en POO
Definición de clases en POO
Gloria Isabel Bautista Lasprilla
 
Programación Orientada a Objetos para Python
Programación Orientada a Objetos para PythonProgramación Orientada a Objetos para Python
Programación Orientada a Objetos para Python
José Luis Chiquete Valdivieso
 
Java persistence
Java persistenceJava persistence
Java persistence
cabraval
 

Similar to Semana 6 Módulos Clases y Objetos (20)

Programación Orientada a Objetos
Programación Orientada a ObjetosProgramación Orientada a Objetos
Programación Orientada a Objetos
 
programacion orientada a objetos
programacion orientada a objetosprogramacion orientada a objetos
programacion orientada a objetos
 
8.clases y objetos en c++
8.clases y objetos en c++8.clases y objetos en c++
8.clases y objetos en c++
 
Guia poo php
Guia poo phpGuia poo php
Guia poo php
 
Programming oriented to objects
Programming oriented to objectsProgramming oriented to objects
Programming oriented to objects
 
Clases y objetos en Java
Clases y objetos en JavaClases y objetos en Java
Clases y objetos en Java
 
Programación 3: Clases y objetos en Java
Programación 3: Clases y objetos en JavaProgramación 3: Clases y objetos en Java
Programación 3: Clases y objetos en Java
 
Propiedades De La Poo
Propiedades De La PooPropiedades De La Poo
Propiedades De La Poo
 
16 17 tecnologias python oop
16 17 tecnologias python oop16 17 tecnologias python oop
16 17 tecnologias python oop
 
Presentación Base de Datos Slideshare
Presentación Base de Datos Slideshare Presentación Base de Datos Slideshare
Presentación Base de Datos Slideshare
 
Bd oo presentacion
Bd oo presentacionBd oo presentacion
Bd oo presentacion
 
Introducción a la programación en Python (día 2)
Introducción a la programación en Python (día 2)Introducción a la programación en Python (día 2)
Introducción a la programación en Python (día 2)
 
[ES] Programación orientada a objeto con java
[ES] Programación orientada a objeto con java[ES] Programación orientada a objeto con java
[ES] Programación orientada a objeto con java
 
Apunte paradigma orientado a objetos
Apunte paradigma orientado a objetosApunte paradigma orientado a objetos
Apunte paradigma orientado a objetos
 
JAVA ORIENTADO A OBJETOS - INTRODUCCIÓN
JAVA ORIENTADO A OBJETOS - INTRODUCCIÓNJAVA ORIENTADO A OBJETOS - INTRODUCCIÓN
JAVA ORIENTADO A OBJETOS - INTRODUCCIÓN
 
Programación Orientada a Objetos - Unidad 2: clases y objetos
Programación Orientada a Objetos - Unidad 2: clases y objetosProgramación Orientada a Objetos - Unidad 2: clases y objetos
Programación Orientada a Objetos - Unidad 2: clases y objetos
 
Unidad 2 ProgramacióN Orientada A Objetos (Repaso)
Unidad 2 ProgramacióN Orientada A Objetos (Repaso)Unidad 2 ProgramacióN Orientada A Objetos (Repaso)
Unidad 2 ProgramacióN Orientada A Objetos (Repaso)
 
Definición de clases en POO
Definición de clases en POODefinición de clases en POO
Definición de clases en POO
 
Programación Orientada a Objetos para Python
Programación Orientada a Objetos para PythonProgramación Orientada a Objetos para Python
Programación Orientada a Objetos para Python
 
Java persistence
Java persistenceJava persistence
Java persistence
 

More from Richard Eliseo Mendoza Gafaro

CUESTIONARIO REDES TELEMATICAS CISCO, HPE Y HUAWEI
CUESTIONARIO REDES TELEMATICAS CISCO, HPE Y HUAWEICUESTIONARIO REDES TELEMATICAS CISCO, HPE Y HUAWEI
CUESTIONARIO REDES TELEMATICAS CISCO, HPE Y HUAWEI
Richard Eliseo Mendoza Gafaro
 
Material_para_Estudiante_DMPC_V012022A_SP_1
Material_para_Estudiante_DMPC_V012022A_SP_1Material_para_Estudiante_DMPC_V012022A_SP_1
Material_para_Estudiante_DMPC_V012022A_SP_1
Richard Eliseo Mendoza Gafaro
 
MANUAL DE ORACLE AUTONOMOUS DATABASE
MANUAL DE ORACLE AUTONOMOUS DATABASEMANUAL DE ORACLE AUTONOMOUS DATABASE
MANUAL DE ORACLE AUTONOMOUS DATABASE
Richard Eliseo Mendoza Gafaro
 
PARCIAL 2 PLATAFORMAS Y SOPORTES MULTIMEDIA 2023-2-VARIANTE 3
PARCIAL 2 PLATAFORMAS Y SOPORTES MULTIMEDIA 2023-2-VARIANTE 3PARCIAL 2 PLATAFORMAS Y SOPORTES MULTIMEDIA 2023-2-VARIANTE 3
PARCIAL 2 PLATAFORMAS Y SOPORTES MULTIMEDIA 2023-2-VARIANTE 3
Richard Eliseo Mendoza Gafaro
 
PARCIAL 2 PLATAFORMAS Y SOPORTES MULTIMEDIA 2023-2-VARIANTE 2
PARCIAL 2 PLATAFORMAS Y SOPORTES MULTIMEDIA 2023-2-VARIANTE 2PARCIAL 2 PLATAFORMAS Y SOPORTES MULTIMEDIA 2023-2-VARIANTE 2
PARCIAL 2 PLATAFORMAS Y SOPORTES MULTIMEDIA 2023-2-VARIANTE 2
Richard Eliseo Mendoza Gafaro
 
PARCIAL 2 PLATAFORMAS Y SOPORTES MULTIMEDIA 2023-2-VARIANTE 4
PARCIAL 2 PLATAFORMAS Y SOPORTES MULTIMEDIA 2023-2-VARIANTE 4PARCIAL 2 PLATAFORMAS Y SOPORTES MULTIMEDIA 2023-2-VARIANTE 4
PARCIAL 2 PLATAFORMAS Y SOPORTES MULTIMEDIA 2023-2-VARIANTE 4
Richard Eliseo Mendoza Gafaro
 
PARCIAL 2 PLATAFORMAS Y SOPORTES MULTIMEDIA 2023-2-VARIANTE 1
PARCIAL 2 PLATAFORMAS Y SOPORTES MULTIMEDIA 2023-2-VARIANTE 1PARCIAL 2 PLATAFORMAS Y SOPORTES MULTIMEDIA 2023-2-VARIANTE 1
PARCIAL 2 PLATAFORMAS Y SOPORTES MULTIMEDIA 2023-2-VARIANTE 1
Richard Eliseo Mendoza Gafaro
 
PARCIAL 2 SISTEMAS OPERATIVOS - BD MYSQL EN ORACLE OCI
PARCIAL 2 SISTEMAS OPERATIVOS - BD MYSQL EN ORACLE OCIPARCIAL 2 SISTEMAS OPERATIVOS - BD MYSQL EN ORACLE OCI
PARCIAL 2 SISTEMAS OPERATIVOS - BD MYSQL EN ORACLE OCI
Richard Eliseo Mendoza Gafaro
 
PARCIAL 2 DESARROLLO DE INTERFACES UI UX
PARCIAL 2 DESARROLLO DE INTERFACES UI UXPARCIAL 2 DESARROLLO DE INTERFACES UI UX
PARCIAL 2 DESARROLLO DE INTERFACES UI UX
Richard Eliseo Mendoza Gafaro
 
Explicación cadena de valor
Explicación cadena de valorExplicación cadena de valor
Explicación cadena de valor
Richard Eliseo Mendoza Gafaro
 
MANUAL DESPLIEGUE SERVIDOR WEB
MANUAL DESPLIEGUE SERVIDOR WEBMANUAL DESPLIEGUE SERVIDOR WEB
MANUAL DESPLIEGUE SERVIDOR WEB
Richard Eliseo Mendoza Gafaro
 
MANUAL DE DESPLIEGUE BASE DE DATOS CON WORKBENCH
MANUAL DE DESPLIEGUE BASE DE DATOS CON WORKBENCHMANUAL DE DESPLIEGUE BASE DE DATOS CON WORKBENCH
MANUAL DE DESPLIEGUE BASE DE DATOS CON WORKBENCH
Richard Eliseo Mendoza Gafaro
 
CUESTIONARIO INTRODUCCION A UNITY 3D v2
CUESTIONARIO INTRODUCCION A UNITY 3D v2CUESTIONARIO INTRODUCCION A UNITY 3D v2
CUESTIONARIO INTRODUCCION A UNITY 3D v2
Richard Eliseo Mendoza Gafaro
 
CUESTIONARIO INTRODUCCION A UNITY 3D
CUESTIONARIO INTRODUCCION A UNITY 3DCUESTIONARIO INTRODUCCION A UNITY 3D
CUESTIONARIO INTRODUCCION A UNITY 3D
Richard Eliseo Mendoza Gafaro
 
MANUAL DESPLIEGUE SERVIDOR BASE DE DATOS
MANUAL DESPLIEGUE SERVIDOR BASE DE DATOSMANUAL DESPLIEGUE SERVIDOR BASE DE DATOS
MANUAL DESPLIEGUE SERVIDOR BASE DE DATOS
Richard Eliseo Mendoza Gafaro
 
INTRODUCCION A SISTEMAS OPERATIVOS
INTRODUCCION A SISTEMAS OPERATIVOSINTRODUCCION A SISTEMAS OPERATIVOS
INTRODUCCION A SISTEMAS OPERATIVOS
Richard Eliseo Mendoza Gafaro
 
CLASE 2 ORACLE CLOUD
CLASE 2 ORACLE CLOUDCLASE 2 ORACLE CLOUD
CLASE 2 ORACLE CLOUD
Richard Eliseo Mendoza Gafaro
 
CASOS DE ESTUDIO MODELADO DEL NEGOCIO
CASOS DE ESTUDIO MODELADO DEL NEGOCIOCASOS DE ESTUDIO MODELADO DEL NEGOCIO
CASOS DE ESTUDIO MODELADO DEL NEGOCIO
Richard Eliseo Mendoza Gafaro
 
MATERIAL DE ESTUDIO CCNA
MATERIAL DE ESTUDIO CCNAMATERIAL DE ESTUDIO CCNA
MATERIAL DE ESTUDIO CCNA
Richard Eliseo Mendoza Gafaro
 
PREGUNTAS TOGAF 9.2 RESPUESTAS
PREGUNTAS TOGAF 9.2 RESPUESTASPREGUNTAS TOGAF 9.2 RESPUESTAS
PREGUNTAS TOGAF 9.2 RESPUESTAS
Richard Eliseo Mendoza Gafaro
 

More from Richard Eliseo Mendoza Gafaro (20)

CUESTIONARIO REDES TELEMATICAS CISCO, HPE Y HUAWEI
CUESTIONARIO REDES TELEMATICAS CISCO, HPE Y HUAWEICUESTIONARIO REDES TELEMATICAS CISCO, HPE Y HUAWEI
CUESTIONARIO REDES TELEMATICAS CISCO, HPE Y HUAWEI
 
Material_para_Estudiante_DMPC_V012022A_SP_1
Material_para_Estudiante_DMPC_V012022A_SP_1Material_para_Estudiante_DMPC_V012022A_SP_1
Material_para_Estudiante_DMPC_V012022A_SP_1
 
MANUAL DE ORACLE AUTONOMOUS DATABASE
MANUAL DE ORACLE AUTONOMOUS DATABASEMANUAL DE ORACLE AUTONOMOUS DATABASE
MANUAL DE ORACLE AUTONOMOUS DATABASE
 
PARCIAL 2 PLATAFORMAS Y SOPORTES MULTIMEDIA 2023-2-VARIANTE 3
PARCIAL 2 PLATAFORMAS Y SOPORTES MULTIMEDIA 2023-2-VARIANTE 3PARCIAL 2 PLATAFORMAS Y SOPORTES MULTIMEDIA 2023-2-VARIANTE 3
PARCIAL 2 PLATAFORMAS Y SOPORTES MULTIMEDIA 2023-2-VARIANTE 3
 
PARCIAL 2 PLATAFORMAS Y SOPORTES MULTIMEDIA 2023-2-VARIANTE 2
PARCIAL 2 PLATAFORMAS Y SOPORTES MULTIMEDIA 2023-2-VARIANTE 2PARCIAL 2 PLATAFORMAS Y SOPORTES MULTIMEDIA 2023-2-VARIANTE 2
PARCIAL 2 PLATAFORMAS Y SOPORTES MULTIMEDIA 2023-2-VARIANTE 2
 
PARCIAL 2 PLATAFORMAS Y SOPORTES MULTIMEDIA 2023-2-VARIANTE 4
PARCIAL 2 PLATAFORMAS Y SOPORTES MULTIMEDIA 2023-2-VARIANTE 4PARCIAL 2 PLATAFORMAS Y SOPORTES MULTIMEDIA 2023-2-VARIANTE 4
PARCIAL 2 PLATAFORMAS Y SOPORTES MULTIMEDIA 2023-2-VARIANTE 4
 
PARCIAL 2 PLATAFORMAS Y SOPORTES MULTIMEDIA 2023-2-VARIANTE 1
PARCIAL 2 PLATAFORMAS Y SOPORTES MULTIMEDIA 2023-2-VARIANTE 1PARCIAL 2 PLATAFORMAS Y SOPORTES MULTIMEDIA 2023-2-VARIANTE 1
PARCIAL 2 PLATAFORMAS Y SOPORTES MULTIMEDIA 2023-2-VARIANTE 1
 
PARCIAL 2 SISTEMAS OPERATIVOS - BD MYSQL EN ORACLE OCI
PARCIAL 2 SISTEMAS OPERATIVOS - BD MYSQL EN ORACLE OCIPARCIAL 2 SISTEMAS OPERATIVOS - BD MYSQL EN ORACLE OCI
PARCIAL 2 SISTEMAS OPERATIVOS - BD MYSQL EN ORACLE OCI
 
PARCIAL 2 DESARROLLO DE INTERFACES UI UX
PARCIAL 2 DESARROLLO DE INTERFACES UI UXPARCIAL 2 DESARROLLO DE INTERFACES UI UX
PARCIAL 2 DESARROLLO DE INTERFACES UI UX
 
Explicación cadena de valor
Explicación cadena de valorExplicación cadena de valor
Explicación cadena de valor
 
MANUAL DESPLIEGUE SERVIDOR WEB
MANUAL DESPLIEGUE SERVIDOR WEBMANUAL DESPLIEGUE SERVIDOR WEB
MANUAL DESPLIEGUE SERVIDOR WEB
 
MANUAL DE DESPLIEGUE BASE DE DATOS CON WORKBENCH
MANUAL DE DESPLIEGUE BASE DE DATOS CON WORKBENCHMANUAL DE DESPLIEGUE BASE DE DATOS CON WORKBENCH
MANUAL DE DESPLIEGUE BASE DE DATOS CON WORKBENCH
 
CUESTIONARIO INTRODUCCION A UNITY 3D v2
CUESTIONARIO INTRODUCCION A UNITY 3D v2CUESTIONARIO INTRODUCCION A UNITY 3D v2
CUESTIONARIO INTRODUCCION A UNITY 3D v2
 
CUESTIONARIO INTRODUCCION A UNITY 3D
CUESTIONARIO INTRODUCCION A UNITY 3DCUESTIONARIO INTRODUCCION A UNITY 3D
CUESTIONARIO INTRODUCCION A UNITY 3D
 
MANUAL DESPLIEGUE SERVIDOR BASE DE DATOS
MANUAL DESPLIEGUE SERVIDOR BASE DE DATOSMANUAL DESPLIEGUE SERVIDOR BASE DE DATOS
MANUAL DESPLIEGUE SERVIDOR BASE DE DATOS
 
INTRODUCCION A SISTEMAS OPERATIVOS
INTRODUCCION A SISTEMAS OPERATIVOSINTRODUCCION A SISTEMAS OPERATIVOS
INTRODUCCION A SISTEMAS OPERATIVOS
 
CLASE 2 ORACLE CLOUD
CLASE 2 ORACLE CLOUDCLASE 2 ORACLE CLOUD
CLASE 2 ORACLE CLOUD
 
CASOS DE ESTUDIO MODELADO DEL NEGOCIO
CASOS DE ESTUDIO MODELADO DEL NEGOCIOCASOS DE ESTUDIO MODELADO DEL NEGOCIO
CASOS DE ESTUDIO MODELADO DEL NEGOCIO
 
MATERIAL DE ESTUDIO CCNA
MATERIAL DE ESTUDIO CCNAMATERIAL DE ESTUDIO CCNA
MATERIAL DE ESTUDIO CCNA
 
PREGUNTAS TOGAF 9.2 RESPUESTAS
PREGUNTAS TOGAF 9.2 RESPUESTASPREGUNTAS TOGAF 9.2 RESPUESTAS
PREGUNTAS TOGAF 9.2 RESPUESTAS
 

Recently uploaded

26.-MARZO-SECTOR-MINERO-IDENTIFICACIÓN-DE-PELIGROS-Y-RIESGOS-CON-ENFOQUE-A-P...
26.-MARZO-SECTOR-MINERO-IDENTIFICACIÓN-DE-PELIGROS-Y-RIESGOS-CON-ENFOQUE-A-P...26.-MARZO-SECTOR-MINERO-IDENTIFICACIÓN-DE-PELIGROS-Y-RIESGOS-CON-ENFOQUE-A-P...
26.-MARZO-SECTOR-MINERO-IDENTIFICACIÓN-DE-PELIGROS-Y-RIESGOS-CON-ENFOQUE-A-P...
FlavioMedina10
 
Enjoy Pasto Bot - "Tu guía virtual para disfrutar del Carnaval de Negros y Bl...
Enjoy Pasto Bot - "Tu guía virtual para disfrutar del Carnaval de Negros y Bl...Enjoy Pasto Bot - "Tu guía virtual para disfrutar del Carnaval de Negros y Bl...
Enjoy Pasto Bot - "Tu guía virtual para disfrutar del Carnaval de Negros y Bl...
Eliana Gomajoa
 
OPERACIONES BÁSICAS (INFOGRAFIA) DOCUMENTO
OPERACIONES BÁSICAS (INFOGRAFIA) DOCUMENTOOPERACIONES BÁSICAS (INFOGRAFIA) DOCUMENTO
OPERACIONES BÁSICAS (INFOGRAFIA) DOCUMENTO
GERARDO GONZALEZ
 
Características de los suelos como los histosoles.pptx
Características de los suelos como los histosoles.pptxCaracterísticas de los suelos como los histosoles.pptx
Características de los suelos como los histosoles.pptx
MONICADELROCIOMUNZON1
 
Juzgamiento-de-Ganado-Lechero-CATEGORIA-B-SWISS.pptx
Juzgamiento-de-Ganado-Lechero-CATEGORIA-B-SWISS.pptxJuzgamiento-de-Ganado-Lechero-CATEGORIA-B-SWISS.pptx
Juzgamiento-de-Ganado-Lechero-CATEGORIA-B-SWISS.pptx
Folke Claudio Tantahuillca Landeo
 
Infografia - Hugo Hidalgo - Construcción
Infografia - Hugo Hidalgo - ConstrucciónInfografia - Hugo Hidalgo - Construcción
Infografia - Hugo Hidalgo - Construcción
MaraManuelaUrribarri
 
1-AAP-RENAV-PyM Capacitación del Reglamento Nacional de Vehiculos.pdf
1-AAP-RENAV-PyM Capacitación del Reglamento Nacional de Vehiculos.pdf1-AAP-RENAV-PyM Capacitación del Reglamento Nacional de Vehiculos.pdf
1-AAP-RENAV-PyM Capacitación del Reglamento Nacional de Vehiculos.pdf
jlupo2024
 
Presentación transferencia de calor Jesus Morales.pdf
Presentación transferencia de calor Jesus Morales.pdfPresentación transferencia de calor Jesus Morales.pdf
Presentación transferencia de calor Jesus Morales.pdf
jdcumarem02
 
VARIABLE DE TESIS DE VIAS URBANAS- MATRIZ.docx
VARIABLE DE TESIS DE VIAS URBANAS- MATRIZ.docxVARIABLE DE TESIS DE VIAS URBANAS- MATRIZ.docx
VARIABLE DE TESIS DE VIAS URBANAS- MATRIZ.docx
ingadriango
 
Presentación Aislante térmico.pdf Transferencia de calor
Presentación Aislante térmico.pdf Transferencia de calorPresentación Aislante térmico.pdf Transferencia de calor
Presentación Aislante térmico.pdf Transferencia de calor
GerardoBracho3
 
SISTEMA AUTOMATIZADO DE LIMPIEZA PARA ACUARIOS
SISTEMA AUTOMATIZADO DE LIMPIEZA PARA ACUARIOSSISTEMA AUTOMATIZADO DE LIMPIEZA PARA ACUARIOS
SISTEMA AUTOMATIZADO DE LIMPIEZA PARA ACUARIOS
micoltadaniel2024
 
Brigada de primeros auxilios presentación.pptx
Brigada de primeros auxilios presentación.pptxBrigada de primeros auxilios presentación.pptx
Brigada de primeros auxilios presentación.pptx
gerenciasisomaqgeren
 
diagrama de flujo. en el área de ingeniería
diagrama de flujo. en el área de ingenieríadiagrama de flujo. en el área de ingeniería
diagrama de flujo. en el área de ingeniería
karenperalta62
 
S09 PBM-HEMORRAGIAS 2021-I Grabada 1.pptx
S09 PBM-HEMORRAGIAS 2021-I Grabada 1.pptxS09 PBM-HEMORRAGIAS 2021-I Grabada 1.pptx
S09 PBM-HEMORRAGIAS 2021-I Grabada 1.pptx
yamilbailonw
 
DISEÑO DE PLANTA TIPO CELULAR - Diseño de Plantas
DISEÑO DE PLANTA TIPO CELULAR - Diseño de PlantasDISEÑO DE PLANTA TIPO CELULAR - Diseño de Plantas
DISEÑO DE PLANTA TIPO CELULAR - Diseño de Plantas
HalmarMiranda
 
balanceo de linea para los procesos de Producción
balanceo de linea  para los procesos  de Producciónbalanceo de linea  para los procesos  de Producción
balanceo de linea para los procesos de Producción
Victor Manuel Rivera Guevara
 
CARRETERAS MÁS IMPORTANTES DEL PERU ALESSANDRA.pptx
CARRETERAS MÁS IMPORTANTES DEL PERU ALESSANDRA.pptxCARRETERAS MÁS IMPORTANTES DEL PERU ALESSANDRA.pptx
CARRETERAS MÁS IMPORTANTES DEL PERU ALESSANDRA.pptx
0602021003
 
Rinitis alérgica-1.pdfuhycrbibxgvyvyjimomom
Rinitis alérgica-1.pdfuhycrbibxgvyvyjimomomRinitis alérgica-1.pdfuhycrbibxgvyvyjimomom
Rinitis alérgica-1.pdfuhycrbibxgvyvyjimomom
DanielaLoaeza5
 
MANUAL MONITOREO DEL SERVICIO DE INTERNET SATELITAL DEL MINEDU (CON ANTENAS ...
MANUAL MONITOREO DEL SERVICIO DE INTERNET  SATELITAL DEL MINEDU (CON ANTENAS ...MANUAL MONITOREO DEL SERVICIO DE INTERNET  SATELITAL DEL MINEDU (CON ANTENAS ...
MANUAL MONITOREO DEL SERVICIO DE INTERNET SATELITAL DEL MINEDU (CON ANTENAS ...
Ing. Julio Iván Mera Casas
 
Klohn Crippen Berger _ Brochure LAM .pdf
Klohn Crippen Berger _ Brochure LAM .pdfKlohn Crippen Berger _ Brochure LAM .pdf
Klohn Crippen Berger _ Brochure LAM .pdf
ciniguez1
 

Recently uploaded (20)

26.-MARZO-SECTOR-MINERO-IDENTIFICACIÓN-DE-PELIGROS-Y-RIESGOS-CON-ENFOQUE-A-P...
26.-MARZO-SECTOR-MINERO-IDENTIFICACIÓN-DE-PELIGROS-Y-RIESGOS-CON-ENFOQUE-A-P...26.-MARZO-SECTOR-MINERO-IDENTIFICACIÓN-DE-PELIGROS-Y-RIESGOS-CON-ENFOQUE-A-P...
26.-MARZO-SECTOR-MINERO-IDENTIFICACIÓN-DE-PELIGROS-Y-RIESGOS-CON-ENFOQUE-A-P...
 
Enjoy Pasto Bot - "Tu guía virtual para disfrutar del Carnaval de Negros y Bl...
Enjoy Pasto Bot - "Tu guía virtual para disfrutar del Carnaval de Negros y Bl...Enjoy Pasto Bot - "Tu guía virtual para disfrutar del Carnaval de Negros y Bl...
Enjoy Pasto Bot - "Tu guía virtual para disfrutar del Carnaval de Negros y Bl...
 
OPERACIONES BÁSICAS (INFOGRAFIA) DOCUMENTO
OPERACIONES BÁSICAS (INFOGRAFIA) DOCUMENTOOPERACIONES BÁSICAS (INFOGRAFIA) DOCUMENTO
OPERACIONES BÁSICAS (INFOGRAFIA) DOCUMENTO
 
Características de los suelos como los histosoles.pptx
Características de los suelos como los histosoles.pptxCaracterísticas de los suelos como los histosoles.pptx
Características de los suelos como los histosoles.pptx
 
Juzgamiento-de-Ganado-Lechero-CATEGORIA-B-SWISS.pptx
Juzgamiento-de-Ganado-Lechero-CATEGORIA-B-SWISS.pptxJuzgamiento-de-Ganado-Lechero-CATEGORIA-B-SWISS.pptx
Juzgamiento-de-Ganado-Lechero-CATEGORIA-B-SWISS.pptx
 
Infografia - Hugo Hidalgo - Construcción
Infografia - Hugo Hidalgo - ConstrucciónInfografia - Hugo Hidalgo - Construcción
Infografia - Hugo Hidalgo - Construcción
 
1-AAP-RENAV-PyM Capacitación del Reglamento Nacional de Vehiculos.pdf
1-AAP-RENAV-PyM Capacitación del Reglamento Nacional de Vehiculos.pdf1-AAP-RENAV-PyM Capacitación del Reglamento Nacional de Vehiculos.pdf
1-AAP-RENAV-PyM Capacitación del Reglamento Nacional de Vehiculos.pdf
 
Presentación transferencia de calor Jesus Morales.pdf
Presentación transferencia de calor Jesus Morales.pdfPresentación transferencia de calor Jesus Morales.pdf
Presentación transferencia de calor Jesus Morales.pdf
 
VARIABLE DE TESIS DE VIAS URBANAS- MATRIZ.docx
VARIABLE DE TESIS DE VIAS URBANAS- MATRIZ.docxVARIABLE DE TESIS DE VIAS URBANAS- MATRIZ.docx
VARIABLE DE TESIS DE VIAS URBANAS- MATRIZ.docx
 
Presentación Aislante térmico.pdf Transferencia de calor
Presentación Aislante térmico.pdf Transferencia de calorPresentación Aislante térmico.pdf Transferencia de calor
Presentación Aislante térmico.pdf Transferencia de calor
 
SISTEMA AUTOMATIZADO DE LIMPIEZA PARA ACUARIOS
SISTEMA AUTOMATIZADO DE LIMPIEZA PARA ACUARIOSSISTEMA AUTOMATIZADO DE LIMPIEZA PARA ACUARIOS
SISTEMA AUTOMATIZADO DE LIMPIEZA PARA ACUARIOS
 
Brigada de primeros auxilios presentación.pptx
Brigada de primeros auxilios presentación.pptxBrigada de primeros auxilios presentación.pptx
Brigada de primeros auxilios presentación.pptx
 
diagrama de flujo. en el área de ingeniería
diagrama de flujo. en el área de ingenieríadiagrama de flujo. en el área de ingeniería
diagrama de flujo. en el área de ingeniería
 
S09 PBM-HEMORRAGIAS 2021-I Grabada 1.pptx
S09 PBM-HEMORRAGIAS 2021-I Grabada 1.pptxS09 PBM-HEMORRAGIAS 2021-I Grabada 1.pptx
S09 PBM-HEMORRAGIAS 2021-I Grabada 1.pptx
 
DISEÑO DE PLANTA TIPO CELULAR - Diseño de Plantas
DISEÑO DE PLANTA TIPO CELULAR - Diseño de PlantasDISEÑO DE PLANTA TIPO CELULAR - Diseño de Plantas
DISEÑO DE PLANTA TIPO CELULAR - Diseño de Plantas
 
balanceo de linea para los procesos de Producción
balanceo de linea  para los procesos  de Producciónbalanceo de linea  para los procesos  de Producción
balanceo de linea para los procesos de Producción
 
CARRETERAS MÁS IMPORTANTES DEL PERU ALESSANDRA.pptx
CARRETERAS MÁS IMPORTANTES DEL PERU ALESSANDRA.pptxCARRETERAS MÁS IMPORTANTES DEL PERU ALESSANDRA.pptx
CARRETERAS MÁS IMPORTANTES DEL PERU ALESSANDRA.pptx
 
Rinitis alérgica-1.pdfuhycrbibxgvyvyjimomom
Rinitis alérgica-1.pdfuhycrbibxgvyvyjimomomRinitis alérgica-1.pdfuhycrbibxgvyvyjimomom
Rinitis alérgica-1.pdfuhycrbibxgvyvyjimomom
 
MANUAL MONITOREO DEL SERVICIO DE INTERNET SATELITAL DEL MINEDU (CON ANTENAS ...
MANUAL MONITOREO DEL SERVICIO DE INTERNET  SATELITAL DEL MINEDU (CON ANTENAS ...MANUAL MONITOREO DEL SERVICIO DE INTERNET  SATELITAL DEL MINEDU (CON ANTENAS ...
MANUAL MONITOREO DEL SERVICIO DE INTERNET SATELITAL DEL MINEDU (CON ANTENAS ...
 
Klohn Crippen Berger _ Brochure LAM .pdf
Klohn Crippen Berger _ Brochure LAM .pdfKlohn Crippen Berger _ Brochure LAM .pdf
Klohn Crippen Berger _ Brochure LAM .pdf
 

Semana 6 Módulos Clases y Objetos

  • 1. CLASE Y OBJETOS EN PYTHON Mg. Richard E. Mendoza G.
  • 2.
  • 3.
  • 4. Ole-Johan Dahl y Kristen Nygaard
  • 5. ● 1960s -> Simula ● 1970s -> SmallTalk ● 1980s -> C++, Eiffel ● 1990s -> Java ● 2000s -> C#, VB.NET, Processing ● Actualidad -> Implementación en lenguajes como Javascript Historia POO
  • 6. 4. Uso de objetos y módulos
  • 7. ● La programación orientada a objetos es un paradigma de programación que otorga los medios para estructurar programas de tal manera que las propiedades y comportamientos estén envueltos en objetos individuales ○ En pocas palabras, es un enfoque que nos permite modelar objetos concretos y del mundo real y las relaciones entre ellos ● Los principios básicos son: ○ Encapsulation ○ Abstraction ○ Inheritance ○ Polyphormism ● Todos los objetos son una instancia de una clase ¿Qué es POO?
  • 8. ● Los tipos básicos en Python (str, int, bool, etc.) están diseñados para representar cosas simples ● Cuando necesitamos crear estructuras más complejas (por ejemplo, un hotel), podemos utilizar clases ● La instancia es el objeto concreto con valores reales ¿Qué es POO? class Hotel:#keyword class pass #instancia constructor de la clase. hotel = Hotel()
  • 9. ● Mejor organización a través de pequeños bloques de código. ● Es más limpio y por ende más fácilmente legible. ● Facilita el mantenimiento del código. ● Permite Reusar código sin reescribir. ● Abstracción y Encapsulación. ● Herencia y Polimorfismo. Beneficios de POO
  • 10. La clase es un modelo o prototipo que define las variables y métodos comunes a todos los objetos de cierta clase. ● Plantilla genérica para un conjunto de objetos de similares características. ● Se pueden crear numerosos objetos de una misma clase. ● Desde la perspectiva del lenguaje, la clase es un tipo de variable. El nombre de la clase se escribe en Singular y en CamelCase Clase # definición de clase class <nombre_clase>(<super_clase>): def __init__(self,<params>): <expresion> def <nombre_metodo>(self,<params>): <expresion>
  • 11. ● Un objeto es una unidad que engloba en sí mismo características y comportamiento necesarias para procesar información. Cada objeto contiene datos y funciones. ● Es una instancia de un clase. ● Variables en memoria que contienen el objeto creado a partir de la clase (plantilla) Objetos class Persona: def init(self, nombre, edad): self.nombre = nombre self.edad = edad def saluda(self, otra_persona): return f'Hola {otra_persona.nombre, me llamo {self.nombre}.' david = Persona('David', 35) erika = Persona('Erika', 32) david.saluda(erika) #'Hola Erika, me llamo David’
  • 12. ● Todas las clases crean objetos y todos los objetos tienen atributos. Utilizamos el método especial __init__ para definir el estado inicial de nuestra instancia. Recibe como primer parámetro obligatorio self (que es simplemente una referencia a la instancia). Atributos de la Instancia class Hotel: def __init__(self, numero_maximo_de_huespedes, lugares_de_estacionamiento): self.numero_maximo_de_huespedes = numero_maximo_de_huespedes self.lugares_de_estacionamiento = lugares_de_estacionamiento hotel = Hotel(numero_maximo_de_huespedes=50, lugares_de_estacionamiento=20) print(hotel.lugares_de_estacionamien to) # 20
  • 13. ● Características intrínsecas del objeto. ● Básicamente son las variables del objeto, solo que técnicamente pasan a llamarse propiedades o atributos Propiedades
  • 14. ● Acciones que puede realizar el objeto. ● Forma de comunicarse con objetos. ● Se pueden pasar parámetros a las funciones en forma de variables. Métodos class Hotel: ... def anadir_huespedes(self, cantidad_de_huespedes): self.huespedes += cantidad_de_huespedes def checkout(self, cantidad_de_huespedes): self.huespedes -= cantidad_de_huespedes def ocupacion_total(self): return self.huespedes hotel = Hotel(50, 20) hotel.anadir_huespedes(3) hotel.checkout(1) hotel.ocupacion_total() # 2
  • 15. class Vehiculo: def __init__(self, placa, marca, modelo): self.placa=placa self.marca=marca def getPlaca(self):#METODOS ACCESORES return self.placa def getMarca(self): return self.marca def mostrarVehiculo(self):#METODOS TRANSACCIONAL print('Placa:'+self.getPlaca() +'Marca:'+self.getMarca()) placa=input('Ingrese placa:') #INGRESAR VARIABLES marca=input('Ingrese marca:') carro=Vehiculo(placa,marca) #INSTANCIAR UN OBJETO carro.mostrarVehiculo()
  • 16. ● Característica de la POO que consiste en crear varios métodos con el mismo nombre pero con diferentes listas de parámetro. ● Cada método sobrecargado es diferenciado al compilar y se ejecuta el método con la lista de parámetros correspondiente. Sobrecarga de Métodos
  • 17. ● Enfocarnos en la información relevante. ● Separar la información central de los detalles secundarios. ● Podemos utilizar variables y métodos (privados o públicos) Abstracción class Lavadora: def __init__(self): pass def lavar(self, temperatura='caliente'): self._llenar_tanque_de_agua(temperatura) self._lavar() def _llenar_tanque_de_agua(self, temperatura): print(f'Llenando el tanque con agua {temperatura}') def _lavar(self): print('Lavando la ropa') lavadora = Lavadora() lavadora.lavar()
  • 18. ● Permite agrupar datos y su comportamiento. ● Controla el acceso a dichos datos. ● Previene modificaciones no autorizadas. Encapsulación class Empleado: def__init__(self, nombre, apellido): self.nombre = nombre self.apellido = apellido @property def nombreCompleto(self): return'{}.{}'.format(self.nombre, self.apellido) @fullname.setter def nombreCompleto(self, name): nombre, apellido = nombre.split(" ") self.nombre = nombre self.apellido = apellido emp_1 = Empleado('Pepe', 'Perez') print(emp_1.nombreCompleto)
  • 19. ● Permite modelar una jerarquía declases. ● Permite compartir comportamiento común en la jerarquía. ● Al padre se le conoce como superclase y al hijo como subclase. class Rectangulo: def __init__(self, base, altura): self.base = base self.altura = altura def area(self): return self.base * self.altura class Cuadrado(Rectangulo): def __init__(self, lado): super().__init__(lado, lado) if __name__ == '__main__': rectangulo = Rectangulo(base=3, altura=4) print(rectangulo.area()) cuadrado = Cuadrado(lado=5) print(cuadrado.area()) Herencia
  • 20. ● La habilidad de tomar variasformas. ● En Python, nos permite cambiar el comportamiento de una superclase para adaptarloalasubclase. class Persona: def __init__(self, nombre): self.nombre = nombre def avanza(self): print('Ando caminando') class Ciclista(Persona): def __init__(self, nombre): super().__init__(nombre) def avanza(self): print('Ando moviendome en mi bicicleta') persona = Persona('David') persona.avanza() ciclista = Ciclista('Daniel') ciclista.avanza() Polimorfismo
  • 21. class Estudiante: #METODO CONSTRUCTOR def __init__(self, nombres, apellidos, cedula,carrera,edad): self.nombres=nombres self.apellidos=apellidos self.cedula=cedula self.carrera=carrera self.edad=edad #METODOS DE ACCESO def getNombres(self): return self.nombres def getApellidos(self): return self.apellidos def getCedula(self): return self.cedula def getCarrera(self): return self.carrera def getEdad(self): return self.edad #METODOS TRANSACCIONALES def imprimirEstudiante(self): print('nNombres:'+self.getNombres()) nombres=input('Ingresar nombres:') apellidos=input('Ingresar apellidos:') cedula=input('Ingresar cédula:') carrera=input('Ingresar carrera:') edad=input('Ingresar edad:') estudiante1=Estudiante(nombres,apellidos,cedula,carrera,edad) estudiante1.imprimirEstudiante()
  • 22. "Programar es entender" "El idioma mundial es el inglés hablado por extranjeros” Kristen Nygaard