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

Documentos relacionados
Computación Avanzada Clase 3. Mauricio Hidalgo Barrientos

TEMA 2 Introducción a C# ANÁLISIS Y DESARROLLO DE APLICACIONES INFORMÁTICAS Curso 2010/2011

Programación orientada a objetos. Capítulo 8 Mejora de las estructuras mediante herencia

PROGRAMACION ORIENTADA A OBJETOS EN C++

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

Programación Orientada a Objetos (POO)

Python: Programación Orientada. JESSE PADILLA AGUDELO Ingeniero Electrónico

Introducción a la Orientación a Objetos

UNIVERSIDAD AUTÓNOMA DE CHIAPAS LICENCIATURA EN SISTEMAS COMPUTACIONALES

CLA. Diagramas de clases en Métrica V3

Test : Conteste exclusivamente en una HOJA DE LECTURA ÓPTICA, no olvidando marcar que su tipo de examen es A.

La Herencia: Teoría (1)

CLAVE ASIGNATURA REQUISITOS HORA/SEMANA CREDITOS TI-8 PROGRAMACION II 80% DE ASISTENCIA 4 6

Principios de Computadoras II

FORMACIÓN Principios de la programación orientada a objetos

Programación Orientada a Objetos. Sesión 4: Herencia

Evaluación Diagnóstico puesta en común. Escuela Técnica ORT - TIC

Universidad Salesiana de Bolivia

Diagramas de secuencia

FUNDAMENTOS DE INFORMÁTICA

Metodologías en la Ingeniería del Software Métodos Orientados a Objetos

b) Qué tipo de variable son las de la línea 6? Cuál es su visibilidad? Explique su

Clases y Objetos en Java. ELO329: Diseño y Programación Orientados a Objetos

Forma Básica Clase Java

Guía práctica de estudio 04: Clases y objetos

16. Herencia Definición de herencia. 168 A. García-Beltrán y J.M. Arranz

2.1. Introducción al lenguaje Java

ABAP IV. ORIENTACIÓN A OBJETOS, UNA VISIÓN GLOBAL

La sintaxis básica para definir una clase es la que a continuación se muestra:

GUIA PROGRAMACIÓN ORIENTADA A OBJETOS

Curso de Python Inicial

Introducción a Java LSUB. 30 de enero de 2013 GSYC

Java Inicial (20 horas)

PROGRAMACIÓN DE COMPUTADORES II SEMANA 2 ESTE DOCUMENTO CONTIENE LA SEMANA 2

2.2 Nombres, Ligado y Ámbito

Se deben modelar los los objetos físicos, tales como Mouse, Disco, Impresora, etc.

Usando el Sistema Operativo

Polimorfismo. Métodos virtuales

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

El patrón Composite (Compuesto) Propósito Componer los objetos a una estructura de jerarquía de relación partetodo.

Analizar, diseñar, desarrollar e implementar soluciones orientadas a objetos utilizando encapsulamiento, herencia, polimorfismo y archivos.

Java Avanzado Facultad de Ingeniería. Escuela de computación.

Modulo 11. Clases y Objetos en Java

Tema 7. El sistema de clases

Tema: Clases y Objetos en C#. Parte II.

Pontificia Universidad Católica del Ecuador


1

Programación Orientada a Objetos en Java

Índice de contenido. Índice de contenido... i Indice de prácticas...ix Prólogo...xi Cómo utilizar este libro...xv

Conceptos. ELO329: Diseño y Programación Orientados a Objetos. ELO 329: Diseño y Programación Orientados a Objetos

INDICE Prefacio 1. Fundamentos de Java 2. Introducción a los tipos de datos y operadores

Diagramas De Casos De Uso

Tema: Herramientas UML, Análisis y diseño UML

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

Programación orientada a objetos. Resumen de Temas Unidad 6: Polimorfismo y reutilización

Capítulo 16. Diagrama de Clases UML

Pontificia Universidad Católica del Ecuador

GUIA 2: Repaso sobre uso de C#. Funciones, métodos y arreglos.

CONTENIDOS. La herencia permite: - Adoptar automáticamente características ya implementadas. Ahorro de tiempo y esfuerzo

Introducción. Herencia y Polimorfismo. Ejemplos (I) Ejemplos (II) Control de Acceso. Herencia

Cristian Blanco

MSc. Francisco García

Introducción Programar es enseñar Iniciación a la programación Finalidad de este libro

PRÁCTICA DE LABORATORIO 4 Programación Orientada a Objetos

Programación I. Carrera: IFM Participantes. Representantes de la academia de sistemas y computación de los Institutos Tecnológicos.

Prof. Mariano Mancuso. Sistemas de información y control diagrama de clases

APPLETS en JAVA. A continuación se muestran algunos ejemplos. 1. Programa que calcula el factorial de 1 número.

Introducción a la Programación Orientada a Objetos

Herramientas Concurrentes en JAVA

Introducción a la programación orientada a objetos

Curso Fundamentos de Informática Lección 7. Programación Orientada a Objetos

Capítulo 3 Análisis Orientado a Objetos

Curso de Java POO: Programación orientada a objetos

Métodos que devuelven valor Dado el siguiente triángulo rectángulo:

Paradigmas de Programación Práctica II - Curso 2012/13

Agradecimientos. Nota de los autores. 1 Problemas, algoritmos y programas 1

Elementos Diagramas de Clases Clase:

INGRESAR DATOS CON UN CONTROL VISUAL EN JAVA. CLASE JTEXTFIELD Y MÉTODO GETTEXT. EJEMPLOS (CU00928C)

PRÁCTICA No 4 POO Encapsulación. El alumno conocerá los principios de la encapsulación, y el uso de constructores para la inicialización de datos

Modulo 10. Programación Orientada a Objetos. Objetivos:

Guía del Curso. IFCD0112 Programación con Lenguajes Orientados a Objetos y Bases de Datos. Relacionales

COLEGIO NACIONAL NICOLAS ESGUERRA EDIFICAMOS FUTURO TEMATICA DE TRABAJO GRADO: DECIMO ASIGNATURA: INFORMATICA PROFESOR: DANILO RODRIGUEZ ACERO

Conceptos de Programación Orientada a Objetos

Redes Semánticas. IIMAS Inteligencia Artificial. Alumno: Vicente Iván Sánchez Carmona Profesora: Dr. Ana Lilia Laureano

Clases. Java: Clases y Objetos. Clases. Clases. Modificadores de clase. Definición de una clase. Cada objeto es un ejemplar de una clase

MASTER PROFESIONAL C# 5 Y ASP.NET MVC 5

C# para no Programadores

Notas técnicas de JAVA Nro. 5 Tip en detalle

INTRODUCCIÓN A BASE DE DATOS. Excel - Access

PROGRAMA DE CURSO. Metodologías de Diseño y Programación. Nombre en Inglés. Design and Programming Methodologies.

PROGRAMACIÓN ORIENTADA A OBJETOS

Programa Educativo: Área de Formación : Carácter de la asignatura

INTRODUCCIÓN...9 CAPÍTULO 1. ELEMENTOS DE UN PROGRAMA INFORMÁTICO...11

Programación con Visual C#

Patrones de Diseño. Patrón estructural Composite. Técnicas de Programación - Curso 2007/08

INDICE Introducción Parte I. El comienzo Hora 1 Llegue a ser un programador 2. Escriba su primer programa 3. Vacaciones con Java

Curso de Programación en C# (40 horas)

INSTITUTO TECNOLOGICO de la laguna Programación Orientada a Objetos en C++

INTRODUCCION A LA PROGRAMACION EN JAVA

Transcripción:

Programación Orientada a Objetos Primeros conceptos de OOP tkinter

Definición La programación orientada a objetos o POO (OOP según sus siglas en inglés) es un paradigma de programación que usa objetos y sus interacciones, para diseñar aplicaciones y programas informáticos. (wikipedia). Los objetos implican: Un estado Un comportamiento Una identidad

Características de los objetos El estado de un objeto corresponde a un conjunto de propiedades o atributos. En Python todo objeto está compuesto por sus atributos, un puntero o referencia a la definición del objeto Clase- (pueden ser varias) y un contador que indica el número de veces que el objeto es referenciado. Recuerde que el contador de referencias es utilizado por el recolector de basura. largo ancho Contador de Referencias Clase Rectangulo

Instancias Los objetos pertenecientes a una clase reciben el nombre de instancias. Suponga que Rectangulo es una clase. a = Rectangulo(10, 20) crea una instancia de la clase Rectangulo y la dirección de esa instancia se almacena en a. Observe que para crear una instancia de Rectángulo se requirieron dos valores numéricos. En este caso utilizar a = Rectangulo() genera un error.

Haciendo uso de las propiedades de un objeto Suponga que a mantiene la dirección de una instancia de la clase rectángulo, y que en esta se definieron las propiedades largo y ancho. a.largo y a.ancho refieren a las propiedades del objeto

Identidad La identidad de un objeto corresponde a un valor entero único que identifica al objeto. En C-Python la identidad del objeto corresponde a su dirección en memoria. id(objeto) retorna su identidad. Observe los siguientes ejemplos.

Clases Una clase define las propiedades y el comportamiento de los objetos que serán sus instancias. El comportamiento corresponde a un conjunto de métodos (funciones) que permiten manipular los objetos.

La Clase Rectángulo Clase Rectangulo Métodos init (self,a, b) demearea() largo ancho Contador de Referencias

Definición de un clase Todos los métodos de la clase reciben en forma automática el parámetro self, el cual representa el objeto o instancia que está siendo manipulado. Nombre de la clase. El método init se invoca en forma automática cuando se crea una nueva instancia de la clase. Se dice que init es un constructor.

Creación de instancias En este momento se crean los atributos.

Qué pasa si omitimos self en el init? vrs (1) En la definición de la clase no se genera ningún error (2) Pero cuando utilizamos el método deme_area se produce un error. Porqué? En el segundo caso, en el método init, ancho y largo son tomadas como locales Y que pasa si usamos: Igual, genera error

Una clase puede no tener init El método init puede no estar presente en la definición de una clase. A pesar de ello siempre se van a crear instancias de la clase. Esto nos lleva a la siguiente verdad de las clases en Python

La verdad sobre las propiedades o atributos de los objetos en Python En Python las variables se definían en el momento de asignarles un valor (realmente se crea el objeto y su dirección se almacena en la variable). Lo mismo sucede con los atributos de los objetos!!

Una clase puede ser derivada de otra clase. La subclase heredará todos las propiedades y métodos de la superclase. Herencia

tkinter tkinter provee a las aplicaciones Python de un interfaz gráfica. tkinter es la interfaz para Tk, un toolkit para Tcl/Tk. Tcl/Tk es una facilidad de scripting y de gráficos desarrollada por John Ousterhout quien formaba parte de la Universidad de Berkeley en California y que luego pasó a Sun Microsystems. Actualmente Tcl/Tk es desarrollado por Scriptics Corporation (de la cual Ousterhout fue fundador).

Jerarquía de tkinter

Nuestra primera aplicación con tkinter

Segunda aplicación