Orientación a Objetos. Parte 2 tkinter

Documentos relacionados
Clases y Objetos en C++

Fila: Es un conjunto de varias celdas dispuestas en sentido horizontal.

Programación Orientada a Objetos. Primeros conceptos de OOP tkinter

IDENTIFICACIÓN VISUAL DE LAS CAJAS DE EXPORTACIÓN DE CARNE DE URUGUAY

EFECTOS TRIDIMENSIONALES

NÚMEROS UTILIZADOS EN ELECTRÓNICA DIGITAL

En esta lección vamos a ver más utilidades y opciones sobre la

Más sobre la edición de hojas

MOS EXCEL APLICAR FORMATO A CELDAS Y RANGOS. Aplicar formato a la estructura de las celdas.

Curso de Python Inicial

Se puede asignar formato a las entradas de las celdas a fin de que los datos queden alineados u

PRUEBAS DE ACCESO A LA UNIVERSIDAD MATERIAS DE MODALIDAD: FASE GENERAL Y ESPECÍFICA OPCIÓN A

PRÁCTICA 3: DISEÑO DE PLANTILLAS WEB

Entorno de Excel - Contexto de Trabajo y navegación

MARCO (FRAME) Los frames se consiguen con las etiquetas <FRAMESET> y <FRAME>.

Temario Programación Web para Web

TEMA 1 CONJUNTOS NUMÉRICOS

Ejercicio 2 Considere la representación para Lista de Naturales y Árbol Binario de Naturales de la Figura 1.

Model Viewer WhitePaper Octubre de 2006

PRUEBAS DE ACCESO A LA UNIVERSIDAD MATERIAS DE MODALIDAD: FASE GENERAL Y ESPECÍFICA

Unidad didáctica 1. Operaciones básicas con números enteros

Modelo Dinámico del Diseño del Software y Representación en UML. UNIDAD 9 Análisis y Diseño de Sistemas de Información

QCAD: ACTIVIDAD 1: PRUEBA

I.E.S. Cuenca Minera Dto. Tecnología P.I. : Introducción al diseño 3D: Blender

GUIA TÉCNICA DE EMBALAJE Y CARGA. TECHLAM. Miguel Hernández Ródenas.

3. FORMAS DE REPRESENTACION

Los números enteros. Dado que los enteros contienen los enteros positivos, se considera a los números naturales son un subconjunto de los enteros.

Programación Avanzada CONCEPTOS BÁSICOS DE IMPLEMENTACIÓN EN C++

Lic. Manuel de Jesús Campos Boc

ADVISOR MODELO DE DESARROLLO

CONTENEDORES PARA LA RECOLECCION DE RESIDUOS SÓLIDOS URBANOS DE LITROS DE CAPACIDAD

4. DIAGRAMAS DE INTERACCIÓN INTRODUCCIÓN DIAGRAMAS DE SECUENCIA Objetos Mensajes

Apuntes de matemáticas 2º ESO Curso

Maquetación con estilos

Programación de Interfaces Gráficas en Java. Agustín J. González ELO329

Tutorial de Python orientado a objetos

CAD 3D. Introducción a 3D. Introducción a 3D. Técnicas de Representación Gráfica. A tener en cuenta

Gráficos de Superficie y de Contorno

DESCRIPCIÓN DE FUNCIONES y 1.1.3

No pueden empezar por un número, es decir, el primer caracter del nombre de la variable ha de ser una letra o _

Creación y modificación de tablas

PRÁCTICAS DE EXCEL PARTE 1

Estructura de Datos. Estructuras de Datos no lineales : Árboles

Ejercicios Scheme. Para cada función escriba su contrato, descripción, ejemplos y los tests necesarios, antes de su implementación.

MANEJO DE OBJETOS EN IMPRESS I: TEXTO Y TABLAS. Ejercicios guiados

Introducción al Diseño de Sistemas de Información. Unidad Nº III: Diagramas Estructurados

Barra de herramientas estándar. Barra de herramientas principales. Barra de herramientas de cámara. Barra de herramientas "Estilo de cara"

Dibujo I D.I. Pilar Diez Urbicain

Microsoft Visual Studio está basado en.net framework. Definiciones de.net Framework:

Descripción y Contenido del Curso. Programación C++ Capacity Academy.

Uso de Java Swing. Noviembre de 2013

Introducción a Swing. Taller de Programación 2016

MANUAL DE CONSTRUCCIÓN MESA DE NOCHE

Paso 1 de 13. Paso 2 de 13. Guía de aprendizaje de Flash CS5 Tutorial 3. Creación de un logotipo textual.

En Fireworks, puede crear una bar nav creando un símbolo en el Editor de botones y luego poniendo instancias de dicho símbolo en el lienzo.

Programación de Interfaces Gráficas en Java

Dreamweaver CS 5. 1 Conociendo Adobe Dreamweaver CS Introducción a Adobe Dreamweaver. 1.2 Novedades de Dreamweaver CS5

INGENIERÍA TELEINFORMÁTICA

CAPITULO 3: PASOS REALIZADOS PARA LA DETECCIÓN DE BORDES DE IMÁGENES A COLOR

INTRODUCCIÓN AL PARADIGMA DE LA PROGRAMACIÓN ORIENTADA A OBJETOS CON JAVA

NETBEANS JAVA PROGRAMACIÓN ORIENTADA A OBJETOS

REGLAMENTO DE USO Bomberos Voluntarios de la República Argentina Nivel Nacional Bombero Voluntario

Dreamweaver CS6 para PC/Mac Sitios completamente CSS conforme a los estándares del W3C

B.- Ejercicio de Herencia y Polimorfismo: FORMAS

Apellidos:... Nombre:...

Práctica 1 Arreglos n-dimensionales y operaciones con bits PRÁCTICA I

SESIÓN 8 DAR FORMATO AL TEXTO.

EFECTO SOMBRA CSS CON BOX-SHADOW. SOMBRA INTERIOR INSET. BLUR O DIFUMINADO, SPREAD. EJEMPLOS Y EJERCICIOS RESUELTOS (CU01059D)

Utilizan como MEDIO el plano. Ambos deben utilizar el mismo código NORMALIZACIÓN

Principios de Computadoras II

Juzgamiento de Vandas

Instrumentación Virtual con LabVIEW

LABORATORIO DE APLICACIONES 5º año E.E.S.T. N 1 PROF. MARÍA DANIELA PIETRASANTA TUTORIAL DE FLASH

CSS3 Domine los estándares web con las hojas de estilo


Isométricos. Ing. Carlos Camacho Soto Escuela de Ingeniería Civil Universidad de Costa Rica IC-302. Setiembre 2005

GESTIÓN ACADÉMICA GUÍA DIDÁCTICA 7

EQUIPAMIENTOS PARA MUEBLES DE OFICINAS 10.1

Actividad 7: Trabajar con capas

Las líneas paralelas en una composición acentúan la dirección.

Guía técnica de embalaje y carga

Crear un lienzo Nuevo.

Métodos mágicos en Python 3

Capítulo XII. Diagramas de Interacción

Definición. Mónica E. García García Feb 07

MATRIZ DE ARBOLES DE DECISION

ContaPlus. Acceso a ContaPlus y El Entorno de trabajo

MAPAS GEOLOGICOS MAPAS GEOLOGICOS

Entorno en Java y Diseño orientado a objetos. ELO-329 Diseño y programación orientados a objetos 1s09

DISEÑO ASISTIDO POR ORDENADOR. GOOGLE SketchUP 8. 3ª parte

Transcripción:

Orientación a Objetos Parte 2 tkinter

Más sobre herencia Suponga la siguiente jerarquía: ClaseA Métodos m1, m2 ClaseB Métodos m2, m3 ClaseC Métodos m3, m4

Más sobre herencia Para m = ClaseC(1,2,3,4,5,6) Qué valores retorna: m.m4(), m.m3(), m.m2(), m.m1()?

Algo nuevo Creación dinámica de atributos en objetos setattr(objeto, atributo, valor) Ejemplo: A.campo = 10 es equivalente a: setattr(a, campo, 10) Acceso a atributos (independientemente como fueron creados) getattr(a, campo )

Atributos de clase Se definen en la clase antes de cualquiera de los métodos. Se referencian dentro de la clase como NombreClase.atributo_de_clase. Los atributos de clase son globales para todas las instancias de la clase.

Ejemplo de Atributos de Clase Discusión: Qué pasaría si decimos a.mi = 900?

Métodos de clase Permiten invocarse mediante NombreClase.Metodo()

Ejercicio Desarrolle una clase Cripto que: Implemente la criptografía por corrimiento: abcdefghijklmnopqrstuvwxyz como base bcdefghijklmnopqrstuvwxyza con corrimiento de 1 Así casa se codifica como dbtb Consideraciones sobre la clase: Atributo de clase: corrimiento Método de clase: establezca corrimiento Atributo de instancia: tira Métodos: codifique

Cripto

raise Estatuto raise y las clases para el raise clase Raise IndexError raise instancia raise IndexError( variable no definida ) Definición de clases de error propias. Propagación de errores: raise manejo de errores

Ejercicio Clase Empleado init (self, persona, puesto = None, salario) Persona debe corresponder a: nombre [segundo nombre] apellido_1 apellido_2 En caso contrario debe hacer un raise de un error EmpleadoError( nombre mal conformado ) aplicaraumento(porcentaje) obtenerapellido(self) Retorna el primer apellido Especialización Jefe(Empleado) El puesto es Jefe aplicaraumento(porcentaje, bono= 1000)

Clase Empleado

Clase Jefe

Sobrecarga de operadores getitem (self, llave) add (self, otro) radd (self, otro) iadd (self, otro) str (self) call (self) call (self, p) sub (self, otro) bool (self) contains (self, x) x[llave] x + otro otro + x x += otro print(x) x() x(p) x - otro if x x in

Ejemplo de sobrecarga

Otro ejemplo de sobre carga

Ejemplo: una calculadora

Calculadora Cómo quitar los _ innecesarios? Cómo hacer para que la calculadora adquiera el comportamiento normal?

El widget Toplevel provee un contenedor separado para otros widgets, como por ejemplo los frames. Hay 4 tipos de Toplevel: La ventana principal referida generalmente como root. El toplevel child que actúa como una ventana separada, al menos que la raíz sea destruida en cuyo caso la ventana hija será destruida. El toplevel transient que se dibuja al frente de su padre y que se oculta si el padre se oculta o es minimizado. Un toplevel no decorado, que crea una ventana que no puede ser movida o minimizada en forma directa. Toplevel

Los widgets frame son contenedores para otros widgets. Los frames pueden tener un tipo de relieve y un ancho de borde. Frame

El widget Label permite presentar texto o imágenes. Label

UNIVERSOS LAURENTIANOS

Representación de los Universos Laurentianos Un universo laurentiano está definido por una matriz de 3 dimensiones: alto, frente, profundidad. En el ejemplo anterior: Alto = 2, Frente = 5, Profundidad = 3 10001 01001 11111 10001 00000 00110

Operaciones sobre universos sucumbir

Operaciones sobre universos Sumar (+) +

Obtener visión aérea aerea [ [3 0 0 1 3] [0 2 0 0 1] [1 2 3 3 1] ]

Obtener vision frontal Frontal [ [1 0 3 1 1] [1 0 3 3 2] [1 0 3 3 1] ] Similarmente se definen izquierda, derecha y posterior.

Crear Universos Universo(Tapa=2, Frente=5, Profundidad=3) crea un universo vacio.

Creación de Universos a partir de archivos Universo(archivo=nombre) Suponga que el archivo contiene: Las tapas siguientes se suman!! 10001 01001 11111 10001 00000 00110 No es válido combinar archivo con tapa, frente, profundidad. Las dimensiones se deducen. Raise de ErrorLuarentiano

Creación de Universos particulares Universo(tapa, frente, profundidad, forma, tam, desp) Donde forma puede ser: solido : todos los cubitos elementos son azules tablero : como un tablero comenzando con azul, blanco, y así sucesivamente. recuadro : todo el borde azul, el ancho es de tam invrecuadro : el inverso de recuadro de tam horizontal : de tamaño tam con desplazamiento desp (visto desde arriba) vertical : igual al anterior pero visto desde arriba

El antiuniverso de un Universo Transforma todos los blancos en azules y viceversa y luego los cubos caen.

Atributos de clase Valores por defecto para la dimensión de un universo laurentiano.

Escritura de Universos en Archivos gentexto(nombrearchivo) 10001 01001 11111 10001 00000 00110