Taller para desarrolladores ● SIGTE Girona 2009 Victor Olaya Francisco José Peñarrubia César Martínez Izquierdo

Slides:



Advertisements
Presentaciones similares
:: Prof. Yeniffer Peña Programación I Interface Gráfica de Usuario Presentación.
Advertisements

Clase 09.  Garantizar la calidad de software  La prueba nunca termina, del IS translada se translada al usuario  Las casas de software invierte del.
Clase 3: primeros programas (1ª parte) iic1102 – introducción a la programación.
Administración de portales Joomla (III)
GvSIG_des_2.x_d: Curso de desarrolladores de gvSIG Desktop v 2.x Introducción Novedades de desarrollo en gvSIG 2.0
GvSIG_des_2.x_d: Curso de desarrolladores de gvSIG Desktop v 2.x Proyectos y paquetes Novedades de desarrollo en gvSIG 2.0
Taller para desarrolladores ● III Jornadas gvSIG Victor Olaya s Francisco José Peñarrubia César Martínez Izquierdo
1 /13 Repositorios online para Sironta Autor: Juan Aguilera Ramos Tutor: Jesús Gabaldón Estudios: Máster Universitario en Software Libre.
GvSIG Mobile Javier Carrasco. Juan Lucas Dominguez. Carlos.
Ofelia Cervantes Redes Dinámicas 1. Ofelia Cervantes Redes dinámicas en Gephi REDES DINÁMICAS: se van construyendo y visualizando en tiempo real Pasos.
04/03/08 1 II Jornadas de SIG Libre, Girona 2008 gvSIG Mobile Miguel Montesinos Director de Proyecto Miembro del Comité Técnico de gvSIG Miembro del Comité.
Aplicación con Angular, Ionic y PHP Por: Luis Salvador.
Flujos de datos Un flujo es un canal por donde fluyen los datos.
PROGRAMACIÓN ORIENTADA A OBJETOS SEGUNDA UNIDAD: “CLASES, OBJETOS Y MÉTODOS” IRVING YAIR SALAS CHÁVEZ ING. EN SISTEMAS COMPUTACIONALES - ITSLP.
WINDOWS Elvira Abajo Lera Octubre, 2008.
Nombre José Francisco Luna Jurado Matricula Asignatura
Herencia Multiple en Java
INGENIERÍA DE INFORMACIÓN Y APLICACIONES
Diseño de aplicaciones móviles
Iniciación a Android Dia 1: Instalación Android Studio - 1h
2as Jornadas de Tecnologías Libres de Información Geográfica
Programación Orientada a Objetos
ECLIPSE.
Extensión para el uso de Gráficos en gvSIG 2.0
gvSIG: Avanzando Juntos
gvSIG Mobile Javier Carrasco.
Product and Testing Manager
Tutorial Holdings Management (Administración de Colecciones)
INTRODUCCIÓN A UML Oscar Miguel Alonso Moreno. INTRODUCCIÓN A UML  QUE ES UML?  PARA QUE SE UTILIZA  COMPONENTES  DIAGRAMAS.
Modelo de 3 capas. Qué es la arquitectura de una aplicación? La arquitectura se refiere a la forma en la que es diseñada tanto física como lógicamente.
Principios básicos del entorno windows
Programación Orientada a Objetos
Ecosistema abierto para la representación espacial de sistemas de información IDESAN, caso de uso aplicado a la gestión sanitaria en la Conselleria de.
Metodología de la programación
Programación Orientada a Objetos
Resumen: Análisis de requerimientos
INTRODUCCIÓN A JAVA.
Juan G. Jordán Aldasoro libLocation: acceso a dispositivos de localización para gvSIG Desktop y Mobile.
9 Clase/ 20 de octubre 2015/ Martes Sistemas de Navegación
ARQUITECTURA DE APLICACIONES WEB.
FUNDAMENTOS DE PROGRAMACION EN ENTORNO WEB. Rodrigo Cabello Ing. Informático Director de proyectos Think – Ideas in Motion FUNDAMENTOS.
EL SISTEMA OPERATIVO Es un conjunto de programas hechos para la ejecución de varias tareas, en las que sirve de intermediario entre el usuario y la computadora.
Conceptos básicos de.NET Explorar el entorno de desarrollo Crear un proyecto Visual Basic.NET Use Visual Studio.NET Acceso a datos Depurar e implantar.
Customización en ADempiere
EXPLORADOR DE WINDOWS 7. Explorador de Windows El Explorador es una herramienta indispensable en un Sistema Operativo ya que con ella podemos organizar.
ESTRUCTURAS DE LOS SISTEMAS OPERATIVOS INTEGRANTES: -SIAS ALVAREZ -GUTIÉRREZ ROBLES -GELDRES HUAYCOCHEA.
Características Generales y Entornos de Desarrollo
CURSO PROGRAMACIÓN BÁSICA SEMANA 3 ¿Qué es un programa?
El entorno de Desarrollo de Dev-C++
Tema: Componentes lógicos de un ordenador. Mediante el sistema de numeración binario, es decir, usando los dígitos 0 y 1. Lo único que transmite,
Class adapter.
PROYECTO DE GRADUACIÓN
Introducción a Windows Forms
ARQUITECTURA DEL PROYECTO. La estructura modelo vista controlador se muestra en la siguiente ilustración : ESTRUCTURA DE PROYECTOS DE MVC.
Informática Ingeniería en Electrónica y Automática Industrial
R.A 1.1 Da tratamiento de datos e información mediante la herramienta de hoja de cálculo electrónica. Excel ¿Qué es y para qué sirve? Excel es un programa.
ESTRUCTURA DE SISTEMAS OPERATIVOS Carbajal Rojas karla.
Docente: Valerio Herrera, Luis E. Experiencia Formativa III Semana 4: Servidores Web.
INTRODUCCIÓN A UML Oscar Miguel Alonso Moreno. INTRODUCCIÓN A UML  QUE ES UML?  PARA QUE SE UTILIZA  COMPONENTES  DIAGRAMAS.
UNIVERSIDAD JUÁREZ AUTÓNOMA DE TABASCO Nombres: Isaac Sánchez García Teofilo Martinez Garcia Ricardo Del Carmen Paz López Vanesa Anahí Pérez Lizárraga.
PROYECTO DE GRADUACIÓN
Agustín J. González ELO-329
Agustín J. González ELO-329
DIAGRAMAS DE FLUJO. D I A G R A M A DE F L UJ O EL DI AGRAMA DE FLUJO ES LA REPRESENTACIÓN GRÁFICA DE DICHA SE CUENCIA DE INSTRUCCIONES QUE CONFORMAN.
PROYECTO DE GRADUACIÓN
Estructura de Sistemas Operativos
Estructura de los Sistemas Operativos
Transcripción de la presentación:

Taller para desarrolladores ● SIGTE Girona 2009 Victor Olaya Francisco José Peñarrubia César Martínez Izquierdo

Indice Introducción Arquitectura interna Proyectos básicos. Core de gvSIG Configurar un workspace de trabajo con Eclipse Andami y el mecanismo de plugin Ejemplos de extensiones Hola Mundo Información personalizada Conexión a un servicio remoto

Introducción ● Aplicación de escritorio ● Proyecto escalable desde sus orígenes. ● Muchas librerías útiles por separado ● Licencia GPL ● Entorno de desarrollo usado: Eclipse 3.2 ● Máquina virtual: JAI ● Extensiones JNI para otras librerías en C++

Arquitectura Interna

Proyectos básicos ● _fwAndami ● libCorePlugin ● libFMap ● libGDBMS ● appGvSIG ● libCq CMS for Java ● extCAD ● ExtJDBC ● Otros: libDWG, libIverUtiles, libUI, binaries libRemoteServices, libGPE....

Proyectos básicos

Configurar un workspace de trabajo ● Descargamos el código fuente de ● Lo descomprimimos en un directorio cualquiera ● En Eclipse ejecutamos File => Switch Workspace (cambiar de workspace) ● En el diálogo que aparece seleccionamos el directorio en el que acabamos de descomprimir las fuentes

Configurar un workspace de trabajo ● gvSIG está compuesto de muchos proyectos (librerías propias) ● Para compilar gvSIG hay que compilar todos los proyectos que lo componen ● Eclipse realiza la compilación (generación de los.class) automáticamente, después debemos ejecutar el fichero build.xml de cada proyecto, que crea los ficheros.jar y los copia al directorio adecuado ● El orden de compilación no es indiferente, ya que unos proyectos necesitan de otros ● Para evitar este proceso, existe un método automático

Compilación de gvSIG (automática)

Ejecución de gvSIG

Depuración ● Ejecución un poco especial ● Sirve para entender mejor el programa, o para encontrar errores ● Permite poner puntos de parada en el código, y hacer ejecuciones paso a paso ● De esta forma se pueden ver o alterar los resultados intermedios

Navegación por el código. (I) ● F3 nos lleva a la definición de un método o clase ● CTRL+MAY+O nos añade imports faltantes ● F4 nos muetra la jerarquía de herencias de una clase ● CTRL+I indenta la(s) línea(s) automáticamente

Navegación por el código. (II) ● En modo depuración: ● F6 avanza una línea ● F5 avanza una línea entrando dentro de la próxima función a ejecutar ● F7 avanza hasta el punto en el que se ha llamado a la función actual ● CTRL+MAY+I evalúa la expresión seleccionada y muetra el resultado

● Andami: Framework que permite la construcción de aplicaciones MDI extensibles a base de un mecanismo de plugins ● Clases más importantes: ● Launcher => Arranca la aplicación e inicializa todos los plugins ● PluginServices => Clase base para obtener todos los servicios ofertados a los plugins plugins. Tiene métodos para obtener MainFrame, MDIManager, traducir cadenas, ejecutar tareas en segundo plano, recuperar instancias de otras extensiones, etc. ● IExtension => Interface que deben implementar todos los plugins. Es la base sobre la que se añaden menus, botones, herramientas, y/o nuevas funcionalidades.. ● IAndamiView=> Cada ventana añadida al framework debe implementar este interface. Define cómo se mostrará esa ventana. (Modal, resizable, iconifiable, etc). ● Las extensiones se controlan desde el fichero “config.xml”. El esquema de este fichero se define en el archivo “plugin-config.xsd”. ● Modelo de Objetos(Andami)

● gvSIG: Plugin que convierte a Andami en un cliente GIS. Usa FMap como librería principal. La mayoría de las clases aquí tendrán que ver con el GUI (interface de usuario). ● Clases más importantes: ● Las que están en el package com.iver.cit.gvsig. Son las “extensions” a andami, las clases que implementan IExtension y aparecen en el fichero “config.xml”. ● Algunos ejemplos:: ● AddLayer: Abre un diálogo que permite añadir capas (basadas en fichero, wms, etc) ● ViewControls: Define botones como (zoom, pan, info, select, etc. ● LayoutControls: La mayoría de los botones y herramientas relacionadas con el Layout. ● ProjectExtension: Maneja el proyecto, y es el punto de entrada para el resto de documentos (View, Tables and Layouts). ● Otras clases interesantes: View, TOC, FlegendManagerWindow, Table y Layout ● Modelo de Objetos(gvSIG)

● Modelo de Objetos

● Clases más importantes: ● MapContext => Contiene todas las capas e información acerca de la proyección, viewport, etc. Dibuja, imprime y maneja algunos eventos. ● MapControl => Componente que sabe cómo pintar (en un trhead aparte) una instancia de MapContext. Está muy relacionado también con los tools. ● ViewPort => Mantiene información acerca de las transformaciones a hacer (Afines o not. Genera los eventos de cámbio de extent visible. ● FLayers => Collección de capas. Puede ser jerárquica. ● Packages: ● Core => Interfaces básicos como IFeature e Igeometry + algunas implementaciones ● Layers => Todo tipo de capas (raster, vectorial, wms...) ● Drivers => Los sistemas lectores de datos. ● Rendering => Leyendas y simbología ● Strategies => Se definen las operaciones que se van a hacer con los datos. ● Tools => Behaviors, tools y sus eventos. ● Modelo de Objetos(FMap)

● Librarías Usadas ● JTS (Java Topology Suite) ● Geotools2 ● Log4java ● Batik ● Castor ● ErMapper ● MrSID ● GDAL ● GDBMS

Documentación ● ● ●

● Ejemplos ● Hola Mundo ● Información personalizada ● Conexión a servicio remoto

Contacto Víctor Olaya Fco. José Peñarrubia César Martínez Izquierdo