Está en la página 1de 20

Pilares de la POO

Programación Orientada a Objeto

Carlos Álvarez Manzo.


carlos.alvarez69@inacapmail.cl
Orientación a Objeto

Pilares de la Programación Orientada a Objeto

Representa gráficamente Objetos mediante diagramas de clases, indicando sus relaciones y cardinalidad
(Integrada Competencia Genérica Trabajo en Equipo).

1.1.1.- Genera Diagrama de clases a partir de requerimientos 1. Diagrama de clases.


otorgados. 2. Cardinalidad y relaciones entre objetos.
1.1.2.- Aplica Encapsulamiento en el desarrollo de un 3. Encapsulación.
software a partir de las necesidades de este. 4. Herencia.
1.1.3.- Identifica cuándo aplicar Herencia en el desarrollo de 5. Abstracción.
un software a partir de requerimientos otorgados. 6. Polimorfismo.
1.1.4.- Aplica abstracción, Herencia y Herencia múltiple en el
desarrollo de un software, de acuerdo con las necesidades.
1.1.5.- Aportando información e ideas para la consecución
de las tareas.
Orientación a Objeto

Herramientas y lenguage a utilizar


Orientación a Objeto

¿Que es un programa?
Serie de instrucciones codificaciones, la cuales permiten realizar tareas especificas en una computadora,
esto son los código fuentes.

El código tiene que ser escrito en lenguajes de programación, este código se transforma en ejecutable,
para esto necesita un compilador, y posteriormente es ejecutado en la CPU, con la ayuda de un
interprete.

Compilador: Interpretes:
Es un traductor que transforma un programa a Son traducidos a lenguaje maquina a medida que
lenguaje maquina y después lo ejecuta son necesarios (instrucción por instrucción)
Orientación a Objeto

Variables y constantes

Se refiere a un objeto que reside en la memoria. El Son tipos de variable las cuales no puede
objeto puede ser de alguno de los tipos vistos ser cambiada. Eso es muy de ayuda
(número o cadena de texto), o alguno de los otros pensar las constantes como contenedores
tipos existentes en Python que contienen información el cual no
puede ser cambiado después.

edadUsuario=20 Un estándar es declararlas en mayúsculas


nombreUsuario=“Carlos Esteban Alvarez Manzo”
DATOS_BD=“localhost”
USER_BD=“root”
PASSWORD_BD=“´2Ç*?=21kNUbn2/&´”
Orientación a Objeto

Leer y escribir en Python

print(object(s), sep=separator, end=end) variable=input(*string)


• Print(“favor de ingresar su nombre: ”)
• print(“Hola”,”Mundo”,”como estan”,”alumnos?”) • Nombre=input();
• R: Hola Mundo como estan alumnos?

• print(“Hola”,”Mundo”,”como estan”,”alumnos?”,sep=“_”,end=“**”)
• Nombre=input(“favor de ingresar su nombre: ”);
• R: Hola_Mundo_como estan _alumnos?**
• Int(input(“”))
• print(f"{variable} string") • Float(input(“”))
Orientación a Objeto

Conversion de tipos de variables.

•Convertir a cadena de texto (string): str()


•Convertir a entero: int()
•A punto flotante (números decimales): float()
•A booleano: bool()
Orientación a Objeto

Operadores Relacionales y Logicos


Un operador relacional se emplea para comparar y establecer la relación entre ellos.
Devuelve un valor booleano (true o false) basado en la condición.

OPERADOR DESCRIPCIÓN USO


> Devuelve True si el operador de la 12 > 3 devuelve True
izquierda es mayor que el operador de la
derecha
< Devuelve True si el operador de la derecha 12 < 3 devuelve False
es mayor que el operador de la izquierda

== Devuelve True si ambos operandos son 12 == 3 devuelve False


iguales
>= Devuelve True si el operador de la 12 >= 3 devuelve True
izquierda es mayor o igual que el operador
de la derecha

<= Devuelve True si el operador de la derecha 12 <= 3 devuelve False


es mayor o igual que el operador de la
izquierda

!= Devuelve True si ambos operandos no son 12 != 3 devuelve True


iguales
Orientación a Objeto

Operadores Logicos
Se utiliza un operador lógico para tomar una decisión basada en múltiples condiciones

OPERADOR DESCRIPCIÓN USO


and Devuelve True si el operador de la 12 > 3 devuelve True
izquierda es mayor que el operador de la
derecha
or Devuelve True si el operador de la derecha 12 < 3 devuelve False
es mayor que el operador de la izquierda

not Devuelve True si ambos operandos son 12 == 3 devuelve False


iguales
Orientación a Objeto

Operadores Aritmeticos

Operador aritmético toma dos operandos como entrada, realiza un cálculo y devuelve el
resultado.

OPERADOR DESCRIPCIÓN USO


+ Realiza Adición entre los operandos 12 + 3 = 15
- Realiza Substracción entre los operandos 12 - 3 = 9
* Realiza Multiplicación entre los operandos 12 * 3 = 36
/ Realiza División entre los operandos 12 / 3 = 4
% Realiza un módulo entre los operandos 16 % 3 = 1
** Realiza la potencia de los operandos 12 ** 3 = 1728
// Realiza la división con resultado de número 18 // 5 = 3
entero
Orientación a Objeto

Ejercicios

1. Solicite dos numeros por teclado he identifique cual es la mayor


o si son iguales.
2. Solicite un numero y verificar si es positivo o negativo
3. Realizar una calculadora con las operaciones basicas ( +, -, *, /),
entre 2 numeros.
4. Calcule teorema de Pitacoras ingresando 2 catetos.
5. Calcular el área de un Circulo, el único dato como variable es el
radio.
6. Simular un Login de usuario con las siguientes credenciales:
1. User: Admin
2. Pass: adMin

*El usuario podra intentar autentificarse 4 veces, si el login es


correcto tendra que decir Bienvenido al Sistema
Sino: “Usuario incorrecto le qudan x opciones”
Cuando se terminen los intentos, se cerrara el programa
indicando por pantalla “Sistema exploto”
Orientación a Objeto

Bucles
Repetir una operación o secuencia de operaciones en función de ciertas condiciones.

While While (Condición) :


La iteración continuará hasta que su condición sea falsa. …

for for variable in elemento iterable (lista, cadena, range, etc.):



Es un bucle más "fijo", permite ejecutar el conjunto de
sentencias un numero determinado de veces fijado al principio Ej:
for i in [0, 1, 2]:
del bucle y funciona por tanto como un contador. Su expresión print(“Numero: “,i)
general seria como la que sigue:
Orientación a Objeto

Ejercicios Bucles

1. Escriba un programa que pida la anchura y altura de un rectángulo y el caracter a utilizar en el


dibujo

2. Escriba un programa que pida un numero y dibuje el siguiente triangulo


Orientación a Objeto

Arreglos – Listas –Tuplas - Sets

Formalmente, en Python no existen los arreglos. Sin embargo, estructuras similares son las listas,
tuplas y diccionarios. En este caso simularemos un arreglo mediante la creación de listas
Orientación a Objeto

Listas - Tuplas
heterogéneas: pueden estar conformadas por elementos de distintos tipo, incluidos otras listas.

mutables: sus elementos pueden modificarse. Inmutables: sus elementos pueden modificarse.

miLista = ['pan', 'huevos', 100, 1234,TRUE] miTupla = ('pan', 'huevos', 100, 1234,TRUE)

Print(miLista[1]) print (miLista[-1])


Resultado=> 'huevos’ Resultado=> TRUE’

Len(miLista) :: 5
Orientación a Objeto

Metodos

• append: Agregar elementos a la lista (listas) • reverse y sort: Ordenar Lista (listas)

• extend: agregar elementos al final (listas) • count: contar elementos según parametro (listas y tuple)

• insert: Ingresa un elemento en un posicion • index: obtiene la primera ubicación de un argumento


especifica(pos,valor) (listas) opcional: indice de donde comienza busqueda
• remove: Elminar un elemento según argumento (listas)
De no existir devuelve un error. (listas y tuple)

• pop: devulve el ultimo valor y lo elimina


opcional: indice de donde genera el metodo
Orientación a Objeto

Diccionario de datos

Es una relación uno a uno entre claves y valores

• .copy(): copia el contenido completo de la lista

• .clear(): Limpia la lista

• Key in dict: consulta si la key existe dentro de la lista

• Fromkeys(): copia todos los keys de un diccionario en uno nuevo

• Get(): obtiene el valor de un key

• Hast_key(): consulta si la key existe dentro de la lista

• Items(): devuelve una lista de pares de dict(clave,valor)


Orientación a Objeto

Excepciones
Controlar errores que pueda ocurrir durante la ejecución de un programa
try, except, else y finally.

try: Errores tipicos


result = 122 / 0
except Exception as ex: IOError
print (”Error controlado , ”,ex) ZeroDivisionError
else: TypeError
print (”No error”) NameErro
Finally: SyntaxErrorr
print(”Siempre hace esto”)
Orientación a Objeto

Ejercicio
Jumanji.
Se requiere desarrollar un algoritmo en Python que simule un juego de mesa.
En el cual un jugador tiene que ingresar su nombre y deberá avanzar casillas según el
lanzamiento de un dado de 6 caras.

Son 101 casillas, de las cuales hay 12 trampas(si el jugador cae en una pierde automáticamente),
estas son definidas de forma aleatoria al momento de comenzar el juego.

El juego terminara cuando se logre completar las 101 o más casillas, o el usuario ingrese la
combinación 1881 por teclado.

Cuando se termine el juego, se debe mostrar el nombre del jugador y las estadísticas del juego:

Si gano o perdió, cantidad de tiros, los números obtenidos del dado, las posiciones de la casilla
por ronda.
Orientación a Objeto

Proxima semana

1. Introducción a OOP

También podría gustarte