programacion orientada a objetos la poo o oop es un paradigma programación que usa objetos y sus...

39
PROGRAMACION ORIENTADA A OBJETOS La POO o OOP es un paradigma programación que usa objetos y sus interacciones para diseñar aplicaciones y programas de computadora. Características - Abstracción - Encapsulamiento - Ocultación - Polimorfismo - Herencia - Recolección de basura

Upload: heriberto-claro

Post on 21-Apr-2015

54 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: PROGRAMACION ORIENTADA A OBJETOS La POO o OOP es un paradigma programación que usa objetos y sus interacciones para diseñar aplicaciones y programas de

PROGRAMACION ORIENTADA A OBJETOS

La POO o OOP es un paradigma programación que usa objetos y sus interacciones para diseñar aplicaciones y programas de computadora.

Características - Abstracción - Encapsulamiento - Ocultación - Polimorfismo - Herencia - Recolección de basura

Page 2: PROGRAMACION ORIENTADA A OBJETOS La POO o OOP es un paradigma programación que usa objetos y sus interacciones para diseñar aplicaciones y programas de

Interfaces Gráficas

Ventajas

• Explota la potencia expresiva• Alienta la reutilización de componentes del

software. • Lleva a sistemas más flexibles al cambio • Reduce el riesgo de desarrollo • Atractivo al funcionamiento de la mente humana. • Reducir el tiempo de desarrollo y el tamaño del

código fuente resultante. • Competitividad• Tiempo reducido para la comercialización• Mayor flexibilidad de los productos

Page 3: PROGRAMACION ORIENTADA A OBJETOS La POO o OOP es un paradigma programación que usa objetos y sus interacciones para diseñar aplicaciones y programas de

Interfaces Gráficas

Riesgos

• coste de eficacia• Saturación de métodos• Alto coste de recursos de computación• los costes de puesta en marcha

Page 4: PROGRAMACION ORIENTADA A OBJETOS La POO o OOP es un paradigma programación que usa objetos y sus interacciones para diseñar aplicaciones y programas de

Interfaces Gráficas

OBJETOS

Son entidades que combinan estado, comportamiento e identidad:

– El estado está compuesto de datos con valores concretos

– El comportamiento está definido por los procedimientos o métodos con que puede operar dicho objeto, es decir, qué operaciones se pueden realizar con él.

– La identidad es una propiedad de un objeto que lo diferencia del resto

Page 5: PROGRAMACION ORIENTADA A OBJETOS La POO o OOP es un paradigma programación que usa objetos y sus interacciones para diseñar aplicaciones y programas de

Interfaces Gráficas

CLASE

Son declaraciones de objetos, o abstracciones de objetos. Cuando programamos un objeto y definimos sus características y funcionalidades en realidad lo que estamos haciendo es programar una clase.

Se compone de: – Atributos – Métodos

Page 6: PROGRAMACION ORIENTADA A OBJETOS La POO o OOP es un paradigma programación que usa objetos y sus interacciones para diseñar aplicaciones y programas de

Interfaces Gráficas

MÉTODOS

Subrutina asociada exclusivamente a una clase (métodos de clase o métodos estáticos) o a un objeto (métodos de instancia).

Consiste generalmente de una serie de sentencias para llevar a cabo una acción, un juego de parámetros de entrada que regularán dicha acción y, posiblemente, un valor de salida (o valor de retorno) de algún tipo.

Page 7: PROGRAMACION ORIENTADA A OBJETOS La POO o OOP es un paradigma programación que usa objetos y sus interacciones para diseñar aplicaciones y programas de

Interfaces Gráficas

ATRIBUTO

Contenedor de un tipo de datos asociados a un objeto (o a una clase de objetos), que hace los datos visibles desde fuera del objeto y esto se define como sus características predeterminadas, y cuyo valor puede ser alterado por la ejecución de algún método

Page 8: PROGRAMACION ORIENTADA A OBJETOS La POO o OOP es un paradigma programación que usa objetos y sus interacciones para diseñar aplicaciones y programas de

Interfaces Gráficas

MENSAJE

Una comunicación dirigida a un objeto,

que le ordena que ejecute uno de sus métodos con ciertos parámetros asociados al evento que lo generó.

Page 9: PROGRAMACION ORIENTADA A OBJETOS La POO o OOP es un paradigma programación que usa objetos y sus interacciones para diseñar aplicaciones y programas de

Interfaces Gráficas

INTERFAZ

• Conexión física y funcional entre dos aparatos o sistemas independientes (Real Academia Española).

• En sofware, parte de un programa que permite el flujo de información entre un usuario y la aplicación, o entre la aplicación y otros programas o periféricos.

• Conjunto de métodos para lograr interactividad entre un usuario y una computadora.

Page 10: PROGRAMACION ORIENTADA A OBJETOS La POO o OOP es un paradigma programación que usa objetos y sus interacciones para diseñar aplicaciones y programas de

Interfaces Gráficas

Características

• Facilidad de comprensión, aprendizaje y uso• Diseño ergonómico (menús, barras de acciones e

iconos de fácil acceso)• Las interacciones se basarán en acciones físicas

sobre elementos de código visual o auditivo y en selecciones de tipo menú con sintaxis y órdenes

• Las operaciones serán rápidas, incrementales y reversibles, con efectos inmediatos

• Existencia de herramientas de Ayuda y Consulta• Tratamiento del error bien cuidado y adecuado al

nivel de usuario

Page 11: PROGRAMACION ORIENTADA A OBJETOS La POO o OOP es un paradigma programación que usa objetos y sus interacciones para diseñar aplicaciones y programas de

Interfaces Gráficas

Funciones

• Puesta en marcha y apagado • Control de las funciones manipulables del equipo • Manipulación de archivos y directorios • Herramientas de desarrollo de aplicaciones • Comunicación con otros sistemas • Información de estado • Configuración de la propia interfaz y entorno • Intercambio de datos entre aplicaciones • Control de acceso • Sistema de ayuda interactivo.

Page 12: PROGRAMACION ORIENTADA A OBJETOS La POO o OOP es un paradigma programación que usa objetos y sus interacciones para diseñar aplicaciones y programas de

Interfaces Gráficas

Interfaz de usuario

Las interfaces, en general, son todos aquellos canales por los cuales se permite la comunicación entre el ser humano y la computadora.

Objetivos:• que el usuario se pueda comunicar con la máquina• que la comunicación se pueda desarrollar de la

forma más fácil y cómoda posible para el usuario

Page 13: PROGRAMACION ORIENTADA A OBJETOS La POO o OOP es un paradigma programación que usa objetos y sus interacciones para diseñar aplicaciones y programas de

Interfaces Gráficas

Tipos

• Según la forma de interactuar del usuario:– Interfaces alfanuméricas – Interfaces gráficas de usuario,– Interfaces táctiles

• Según su construcción: – interfaz de hardware– interfaz de software

Page 14: PROGRAMACION ORIENTADA A OBJETOS La POO o OOP es un paradigma programación que usa objetos y sus interacciones para diseñar aplicaciones y programas de

Interfaces Gráficas

Interfaz gráfica

Tipo de interfaz de usuario que utiliza un conjunto de imágenes y objetos gráficos para representar la información y acciones disponibles en la interfaz. Es la cara visible de los programas tal y como se presenta a los usuarios para que interactúen con la máquina

Elementos importantes:– tipografía – tratamiento del color

Page 15: PROGRAMACION ORIENTADA A OBJETOS La POO o OOP es un paradigma programación que usa objetos y sus interacciones para diseñar aplicaciones y programas de

Interfaces Gráficas

HERENCIA

Es la capacidad de derivar clases a partir de las clases existentes, (o sea obtener una nueva clase a partir de otra). Esta propiedad permite crear nuevos objetos a partir de otros ya existentes, obteniendo características (métodos y atributos) similares a los ya existentes. Es la relación entre una clase general y otra clase más específica.

 

Tipos:– Simple

– Múltiple

Page 16: PROGRAMACION ORIENTADA A OBJETOS La POO o OOP es un paradigma programación que usa objetos y sus interacciones para diseñar aplicaciones y programas de

Interfaces Gráficas

Ventajas

• Ayuda a los programadores ahorrar código y tiempo,

• Los objetos pueden ser construidos a partir de otros similares.

• La clase derivada puede heredar código y datos de la clase base, añadiendo código o modificando lo heredado.

• Las clases que heredan propiedades de otra clase pueden servir como clase base de otras.

Page 17: PROGRAMACION ORIENTADA A OBJETOS La POO o OOP es un paradigma programación que usa objetos y sus interacciones para diseñar aplicaciones y programas de

Interfaces Gráficas

POLIMORFISMO

• Propiedad que tienen las clases de ocultar la estructura interna en una jerarquía de clases, implementando de manera diferente un mismo método.

• Capacidad que tienen los objetos de una clase de responder al mismo mensaje o evento en función de los parámetros utilizados durante su invocación.

Tipos:– Polimorfismo dinámico– Polimorfismo estático

Page 18: PROGRAMACION ORIENTADA A OBJETOS La POO o OOP es un paradigma programación que usa objetos y sus interacciones para diseñar aplicaciones y programas de

Interfaces Gráficas

máquina o artefacto

• Definición: Agregado de diversas partes, ordenadas entre sí, capaces de efectuar un trabajo o de llevar a cabo una función, ya sea dirigida por un operador,o de forma autónoma .

• Primera maquina informática: 1822, Charles Babbage : "Artefacto de la Diferencia"

Page 19: PROGRAMACION ORIENTADA A OBJETOS La POO o OOP es un paradigma programación que usa objetos y sus interacciones para diseñar aplicaciones y programas de

Interfaces Gráficas 19

interacción

RAE: Acción que se ejerce recíprocamente entre dos o más objetos, agentes, fuerzas, funciones, etc.

BOOTH: Intercambio de simbolos entre 2 o más partes, asignando los participantes en el proceso comunicativo significado adecuado a esos simbolos.

Informática: Relación dada entre la persona y la máquina a través de una interfaz.

(*)interfaz: cualquier medio que usemos para interactuar con los ordenadores (como el ratón, por ejemplo)

Page 20: PROGRAMACION ORIENTADA A OBJETOS La POO o OOP es un paradigma programación que usa objetos y sus interacciones para diseñar aplicaciones y programas de

Interfaces Gráficas 20

IPO (Interación persona ordenador)/HCI

Definicion: Disciplina que estudia el intercambio de información entre personas y las herramientas informáticas. – Comprende: diseño, evaluación e

implementación de sistemas interactivos(*) sistema: no referido sólo al soft/hardware

sino a todo lo que le rodea– Objetivo: Intercambio más eficaces y

eficientes

Page 21: PROGRAMACION ORIENTADA A OBJETOS La POO o OOP es un paradigma programación que usa objetos y sus interacciones para diseñar aplicaciones y programas de

Interfaces Gráficas 21

usabilidad

ISO/IEC 9126:“Se refiere a la capacidad de un software de ser comprendido, aprendido, usado y ser atractivo para el usuario, en condiciones específicas de uso"ISO/IEC 9241:“Es la eficacia, eficiencia y satisfacción con la que un producto permite alcanzar objetivos específicos a usuarios específicos en un contexto de uso específico"

Page 22: PROGRAMACION ORIENTADA A OBJETOS La POO o OOP es un paradigma programación que usa objetos y sus interacciones para diseñar aplicaciones y programas de

Interfaces Gráficas 22

accesibilidad

Definición: es el grado en el que todas las personas pueden utilizar un objeto, visitar un lugar o acceder a un servicio, independientemente de sus capacidades técnicas o físicas. En informática, tipografías de alto contraste o gran tamaño, programas de reconocimiento de voz, teclados adaptados..

Page 23: PROGRAMACION ORIENTADA A OBJETOS La POO o OOP es un paradigma programación que usa objetos y sus interacciones para diseñar aplicaciones y programas de

Interfaces Gráficas 23

ergonomía

Etimología: griego: ergos (actividad) y nomos (leyes naturales) -> las normas que regulan la actividad humana

Definición: Ciencia que estudia la capacidad y la

psicología del hombre en relación con su trabajo y la maquinaria que maneja para trata de mejorar las condiciones que se establecen entre ellos.

idea: diseñar los productos y los trabajos de manera

que se adapten a las personas y no al contrario -> conocer limitaciones/capacidades de las personas

Page 24: PROGRAMACION ORIENTADA A OBJETOS La POO o OOP es un paradigma programación que usa objetos y sus interacciones para diseñar aplicaciones y programas de

Interfaces Gráficas 24

cognición

Etimologia: del latín cognoscere ( "conocer“)

RAE: facultad de los seres de procesar información a partir de la percepción, el conocimiento adquirido y características subjetivas que permiten valorar y considerar ciertos aspectos en detrimento de otros.

Page 25: PROGRAMACION ORIENTADA A OBJETOS La POO o OOP es un paradigma programación que usa objetos y sus interacciones para diseñar aplicaciones y programas de

Interfaces Gráficas 25

metáfora

RAE: Aplicación de una palabra o de una expresión a un objeto o a un concepto, al cual no denota literalmente, con el fin de sugerir una comparación (con otro objeto o concepto) y facilitar su comprensión.

importancia: permite una transferencia congniscitiva de un ámbito de conocimiento familiar a otro menos conocido (Richards, 1994)

ej: el átomo es un sistema solar en miniatura.

Page 26: PROGRAMACION ORIENTADA A OBJETOS La POO o OOP es un paradigma programación que usa objetos y sus interacciones para diseñar aplicaciones y programas de

Interfaces Gráficas 26

percepción

Definición: es la función psíquica que permite a un ser vivo, a través de los sentidos, recibir, elaborar e interpretar la información proveniente de su

entorno.

psíquica : Ciencia que estudia la conducta observable de los individuos y sus procesos mentales, incluyendo los procesos internos de los individuos, y las influencias que se ejercen desde su entorno físico y social.

Page 27: PROGRAMACION ORIENTADA A OBJETOS La POO o OOP es un paradigma programación que usa objetos y sus interacciones para diseñar aplicaciones y programas de

Interfaces Gráficas 27

tarea

Definición: Acción que tiene el máximo grado de

concreción y especificidad. – Un conjunto de tareas configura una actividad. – Se encuentran limitadas en el tiempo.

Page 28: PROGRAMACION ORIENTADA A OBJETOS La POO o OOP es un paradigma programación que usa objetos y sus interacciones para diseñar aplicaciones y programas de

Interfaces Gráficas 28

actividad

RAE: Facultad de obrar.

Definición: subdivisión de los objetivos o metas, permitiendo agrupar compromisos en una secuencia lógica, para su orden y seguimiento.

Page 29: PROGRAMACION ORIENTADA A OBJETOS La POO o OOP es un paradigma programación que usa objetos y sus interacciones para diseñar aplicaciones y programas de

Interfaces Gráficas 29

diseño

G. Bonsiepe “puede ser caracterizado como un dominio en el cual los contenidos son visualizados por medio de la selección, ordenamiento, jerarquización, conexiones y distinciones para permitir la acción eficaz” .

El diseñador no es un simple traductor visual, sino que se le debe reconocer un rol coautoral, ya que deberá poseer capacidades cognoscitivas, organizativas y didácticas para convertir datos abstractos y en bruto en información perceptible y comprensible.

Page 30: PROGRAMACION ORIENTADA A OBJETOS La POO o OOP es un paradigma programación que usa objetos y sus interacciones para diseñar aplicaciones y programas de

Interfaces Gráficas 30

Prototipo

• Cualquier tipo de máquina en pruebas o un objeto diseñado para una demostración de cualquier tipo.

• Versión limitada del producto software que permite a las partes responsables de su creación (desarrollador y cliente) probarlo en situaciones reales y explorar su uso. Permite testar el objeto antes de que entre en producción, detectar errores, deficiencias, etcétera. Cuando el prototipo está suficientemente perfeccionado en todos los sentidos requeridos y alcanza las metas para las que fue pensado, el objeto puede empezar a producirse.

Page 31: PROGRAMACION ORIENTADA A OBJETOS La POO o OOP es un paradigma programación que usa objetos y sus interacciones para diseñar aplicaciones y programas de

Interfaces Gráficas 31

Norma

• Regla que se debe seguir o a que se deben ajustar las conductas, tareas, actividades, etc. En el ámbito que nos ocupa, el producto es el software y se debe ajustar a una serie de modelos de desarrollo y reglas de calidad, entre otras cosas.

Page 32: PROGRAMACION ORIENTADA A OBJETOS La POO o OOP es un paradigma programación que usa objetos y sus interacciones para diseñar aplicaciones y programas de

Interfaces Gráficas 32

Estándar

• En tecnología y otros campos, un estándar es una especificación que regula la realización de ciertos procesos o la fabricación de componentes para garantizar la interoperabilidad (condición mediante la cual sistemas heterogéneos pueden intercambiar procesos o datos).

Page 33: PROGRAMACION ORIENTADA A OBJETOS La POO o OOP es un paradigma programación que usa objetos y sus interacciones para diseñar aplicaciones y programas de

Interfaces Gráficas 33

Evento

• Mensaje de software que indica que algo ha ocurrido, como un tecleo o un click de un mouse. Es importante detectar su ocurrencia para actuar en consecuencia.

Page 34: PROGRAMACION ORIENTADA A OBJETOS La POO o OOP es un paradigma programación que usa objetos y sus interacciones para diseñar aplicaciones y programas de

Interfaces Gráficas 34

Proceso

• Conjunto de actividades o eventos (coordinados u organizados) que se realizan o suceden (alternativa o simultáneamente) con un fin determinado.

• En informática, un proceso es un programa en ejecución, los procesos son gestionados por el sistema operativo y están formados por: * Instrucciones del programa.

* Estado de ejecución en un momento dado

* Su memoria de trabajo,memoria reservada y su contenido.

* Otra información para la planificación por el SSOO.

Page 35: PROGRAMACION ORIENTADA A OBJETOS La POO o OOP es un paradigma programación que usa objetos y sus interacciones para diseñar aplicaciones y programas de

Interfaces Gráficas 35

AWT: Abstract Window Toolkit

• En español, Kit de Herramientas de Ventana Abstracta: es un kit de herramientas de gráficos, interfaz de usuario y sistema de ventanas independiente de la plataforma original de Java. AWT forma parte de las Java Foundation Classes (JFC) (API estándar para suministrar una interfaz gráfica de usuario (GUI) para un programa Java).

• Sólo se dispone en AWT de las funcionalidades comunes en todos los sistemas operativos.

• Ejemplo de estas herramientas son: TextField, Label, Button, Checkbox, TextArea, etc., entre otros.

Page 36: PROGRAMACION ORIENTADA A OBJETOS La POO o OOP es un paradigma programación que usa objetos y sus interacciones para diseñar aplicaciones y programas de

Interfaces Gráficas 36

SWT: Standard widget Toolkit

• Conjunto de componentes para construir interfaces gráficas en Java, (widgets) desarrollados por el proyecto Eclipse (entorno de desarrollo integrado de código abierto multiplataforma para desarrollar "Aplicaciones de Cliente Enriquecido").– Un widget es una pequeña aplicación o programa,

usualmente presentado en archivos o ficheros pequeños que son ejecutados por un motor de widgets o Widget Engine. Entre sus objetivos están los de dar fácil acceso a funciones frecuentemente usadas y proveer de información visual.

Page 37: PROGRAMACION ORIENTADA A OBJETOS La POO o OOP es un paradigma programación que usa objetos y sus interacciones para diseñar aplicaciones y programas de

Interfaces Gráficas 37

Swing de Java

• Swing es una biblioteca gráfica para Java. Incluye widgets para interfaz gráfica de usuario tales como cajas de texto, botones, desplegables y tablas. Se puede considerar como una versión mejorada de AWT, (por ejemplo, no está limitada a las funcionalidades comunes de los distintos sistemas operativos)

Page 38: PROGRAMACION ORIENTADA A OBJETOS La POO o OOP es un paradigma programación que usa objetos y sus interacciones para diseñar aplicaciones y programas de

Interfaces Gráficas 38

Componente

• Componente es una clase abstracta que representa todo lo que tiene una posición, un tamaño, puede ser pintado en pantalla y puede recibir eventos.

• Son los elementos proporcionados por AWT, por swing, etc.

Page 39: PROGRAMACION ORIENTADA A OBJETOS La POO o OOP es un paradigma programación que usa objetos y sus interacciones para diseñar aplicaciones y programas de

Interfaces Gráficas 39

Abstracción

• La abstracción es un modelo simplificado de un sistema construido por una persona en el que ignora los detalles poco relevantes para centrarse en las características más esenciales y, así, facilitar la comprensión de un sistema muy complejo.