TGP 2010 Tecnolog铆a de la Programaci贸n Sesi贸n 02/10 Tecnolog铆as y entornos
Tres Conceptos
2
<!TGP@2010-S02>
6 de ene de 2013
POO – Programación Orientada al Objeto Los Objetos combinan
3
El estado uno o varios atributos a los que se habrán asignado unos valores concretos (datos). El comportamiento qué operaciones se pueden realizar con él. La identidad es su identificador (concepto análogo al de identificador de una variable o una constante).
<!TGP@2010-S02>
6 de ene de 2013
POO – Características Abstracción: Denota las características esenciales de un objeto,. Encapsulamiento: Significa reunir a todos los elementos que pueden considerarse pertenecientes a una misma entidad Principio de ocultación: Cada objeto está aislado del exterior Polimorfismo: comportamientos diferentes, asociados a objetos distintos, pueden compartir el mismo nombre Herencia: las clases no están aisladas, sino que se relacionan entre sí, formando una jerarquía de clasificación Recolección de basura: técnica por la cual el ambiente de Objetos se encarga de destruir automáticamente
4
<!TGP@2010-S02>
6 de ene de 2013
POO – Conceptos Fundamentales Clase: definiciones de las propiedades y comportamiento de un tipo de objeto concreto Herencia: Jerarquías de Clases Objeto: entidad provista de un conjunto de propiedades o atributos (datos) y de comportamiento o funcionalidad (métodos) los mismos que consecuentemente reaccionan a eventos. Método: Algoritmo asociado a una clase, cuya ejecución se desencadena tras la recepción de un "mensaje". Evento: Es un suceso en el sistema 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ó. Propiedad o atributo: contenedor de un tipo de datos asociados a un objeto Estado interno: es una variable que se declara privada que se utiliza para indicar distintas situaciones posibles para el objeto Componentes de un objeto: atributos, identidad, relaciones y métodos. Representación de un objeto: un objeto se representa por medio de una tabla o entidad que esté compuesta por sus atributos y funciones correspondientes.
5
<!TGP@2010-S02>
6 de ene de 2013
POO – Procedimiento Diseñar las Clases
Propiedades o Atributos Métodos Relaciones
Asociar las Clases en Paquetes Asociar los paquetes en “librerías de Clases” Documentar el uso Publicar o Distribuir
6
<!TGP@2010-S02>
6 de ene de 2013
POO – Utilización Localizar Librerías y Documentar Referenciar (¿Distribución?) Importar en Contexto Desarrollo
Import <paquete> Using <paquete.paquete. >
Instanciar Objetos
Var <Variable>=new <Clase>(<parametros>)
Crear Estado
<propiedad.value>=<valor …>
Usar Métodos
<variable>=<objeto.metodo>(<parametros>)
Liberar
7
<objeto>=Nothing
<!TGP@2010-S02>
6 de ene de 2013
8
<!TGP@2010-S02>
6 de ene de 2013
GUI – Interfaces Graficas de Usuario Basadas en tres conceptos
Ventanas Iconos Marcadores (Teclado, Ratón, …)
Controles Eventos
9
Disparador Manejador (driver)
<!TGP@2010-S02>
6 de ene de 2013
GUI – Desarrollo
Definir ventanas
Presentación Menús Controles
Presentación Eventos Lógica
Eventos Lógica (Manejadores de Eventos, Procesos, ..
10
<!TGP@2010-S02>
6 de ene de 2013
GUI – Eventos (1)
Representación de cualquier cambio en el sistema
De cada evento el Núcleo del GUI registra
Usuario Cambio de Estado Tipo de Evento Identificación del mismo Parámetros locales Parámetros de Estado Parámetros de sistema Aplicación afectada
El Núcleo del GUI guarda el registro del evento en una Cola de Eventos (mensajes). 11
<!TGP@2010-S02>
6 de ene de 2013
GUI – Eventos (2)
Los eventos son comunicados (en orden) a la aplicación que ha de responder a los mismos La aplicación da respuesta al evento
Con “Manejador” especifico Con Tratamiento “por defecto” Burbujeo
Si el evento es transferido de regreso a la GUI
12
Aplica acción por defecto de la GUI
<!TGP@2010-S02>
6 de ene de 2013
GUI – Ciclo de aplicación
13
<!TGP@2010-S02>
6 de ene de 2013
SAA – Arquitectura “estándar” de Aplicaciones
La norma nace en IBM y para los sistemas OS/2, pero se implementa totalmente por Microsoft y en parte por Apple y los sistemas UNIX con XWindows.
Disponer de una única y razonable "manera" de presentar las aplicaciones al usuario, independientemente del tipo de sistema y de las características del mismo, logrando consistencia entre aplicaciones y haciendo transparente al usuario las bases técnicas
Las interfaces de red (WEB y similares) rompen con la norma pero de alguna forma y siempre que descargan funcionalidad a la estación cliente (ActiveX, Applets ...) se sigue implementando este tipo de Interface.
Con las API del GUI se dispone de las funcionalidades básicas que la SAA describe, pero no se disponen juntas o añadidas a los objetos integrados en cada aplicación, siendo responsabilidad del programador dotar a su aplicación del comportamiento que se describe y ajustarlo lo mas estrechamente posible a estándares que el usuario reconozca.
Los lenguajes de programación visual y los lenguajes OOP, integran los objetos de la interface como clases que pueden ser fácilmente instanciadas en objetos que se añaden a la aplicación. En ellos el programador puede modificar aspecto y comportamiento mediante el cambio de las propiedades de los mismos asociadas y llamando a métodos que realizan acciones básicas. Estos objetos notifican a la aplicación de las acciones del usuario sobre ellos mediante mensajes de evento. 14
<!TGP@2010-S02>
6 de ene de 2013
Persistencia
Local
Ficheros SGBD
Remoto
15
Ficheros (URL) Colecciones Gestionadas (Repositorios) SGBD (ADO) Servicios WEB
<!TGP@2010-S02>
6 de ene de 2013
Persistencia – Método
Referenciar e Instanciar Librería de manejo Preparar entorno (Objetos de manejo) Conectar la aplicación con Fuente de Información Gestión inicial de datos Definir comandos con criterios de acceso a datos Actuar sobre la fuente de Información Gestión de Resultados Gestión de errores Cerrar Comunicación Liberar Recursos 16
<!TGP@2010-S02>
6 de ene de 2013
Persistencia – Recursos
Referencia de la capa de Persistencia
Lenguaje de Comandos
URL Cadena Conexión Dirección servicio Consulta Modificación Definición
Formato de Datos y Documentos 17
XML SQL <!TGP@2010-S02>
6 de ene de 2013
Persistencia – Consideraciones Importantes
Seguridad de acceso Continuidad y Disponibilidad Necesidades temporales
Volumen de la información “Grano” de la Información Esquema navegacional
Estáticas Dinámicas
Interno Con otras fuentes
Multimedia 18
<!TGP@2010-S02>
6 de ene de 2013
19
<!TGP@2010-S02>
6 de ene de 2013
Entornos de Desarrollo
Gestión completa de Código en POO Editor “Activo” Gestión de Referencias
Gestión de “Fuentes” de Información
Locales Remotas Locales (SGBD, Ficheros) Remotas (SGBD, Servicios WEB)
Controles, Ventanas y Recursos GUI Entornos pre-configurados (WEB, …) Documentación 20
<!TGP@2010-S02>
6 de ene de 2013
Entornos de Desarrollo
Visual Studio
Eclipse
Microsoft Basic y C# Alto Coste Completo Formularios, WEB. RIA IBM Java Libre Completo Formularios y WEB
… 21
<!TGP@2010-S02>
6 de ene de 2013