Download Seccion 7
Document related concepts
no text concepts found
Transcript
INF 473 Desarrollo de Aplicaciones en Java Sección VII Tópicos Modernos Prof. José Miguel Rubio [email protected] [email protected] PUCV Marzo 2008 JDBC Acceso a Bases de Datos Se logra a través de JDBC (Java Data Base Connectivity) JDBC provee un API de programación el cual se utiliza para conectarnos a diferentes bases de datos Capas de JDBC Capa Aplicación (Application Layer) Conjunto de clases (API) usadas para hacer llamados a la base de datos a través de SQL, obtener y procesar los resultados. Capa Manejador (Driver Layer) Conjunto de clases (API) que se encargan de establecer, manejar y terminar la comunicación con un DBMS (Implementación especifica de un driver) Capas de JDBC Ventajas El Driver Manager instancia el driver adecuado. Los driver no tienen que ser precargados. Los tipos de datos SQL son mapeados a tipos de datos Java (flexibilidad). Ejemplo de uso db=DriverManager.getConnection (Jdbc:postgresql:database, usr, pwd); st = db.createStatement(); st.executeQuery(« sql code »); SWING Swing Es el conjunto de clases de JFC que nos permite construir interfaces gráficas para usuario (GUI). Ejemplo de componentes Swing & JDBC J2ME J2ME Esta diseñado para equipos con baja capacidad de memoria y procesamiento. Se puede programar orientando el programa a una gran gama de dispositivos. SDK Sun Microsystem provee varios emuladores junto con un sdk para j2me, con lo cual no necesitamos tener un dispositivo para probar. Varios distribuidores proveen versiones de emuladores de sus productos. Sony Ericsson, Motorola,etc. Servlets / JSP Servlets y JSP Son métodos de creación de páginas web dinámicas en servidor usando el lenguaje Java En ese sentido son similares a otros métodos o lenguajes tales como PHP, los CGIs (common gateway interface), que generan páginas web en el servidor, o los ASP (Active Server Pages), un método específico de Microsoft. Sin embargo, se diferencian de ellos en otras cosas. Java Servlets Son programas escritos en JAVA que se ejecutan en el marco de un servicio de red (ej. Servidor HTTP ) que reciben y responden peticiones de los clientes. Servidores HTTP Resin, de Caucho Technologies: Enfocado al servicio de páginas XML, con licencia libre para desarrolladores. Dice ser bastante rápido. Incluye soporte para Javascript además de Java y un lenguaje de templates llamado XTP. Fácil de instalar. BEA Weblogic: Servidor de aplicaciones de alto nivel, y alto precio. Escrito íntegramente en Java. Se combina con otra serie de productos, tales como Tuxedo, un servidor de bases de datos para XML. Servidores HTTP JRun, de Macromedia: Lutris Enhydra: Servidor de aplicaciones de Java Se puede bajar una versión de evaluación gratuita Servidor gratuito y Open Source, aunque tiene una versión de pago. Enfocado a servir XML, y para plataformas móviles. Las versiones más actualizadas son de pago. Jakarta Tomcat: El más popular, Open Source, y continuamente en desarrollo. Arquitectura Cliente/Servidor Caracteristicas de los Servlets Al igual que los programas CGI, los servlets permiten la generación dinámica de código HTML. Permiten la utilización de cookies y sesiones de forma que se puede guardar informaciones específicas de un usuario. Pueden actuar de enlace entre el cliente y una o varias Bases de Datos en arquitecturas cliente servidor de 3 capas. JSP Un JSP se compila a un programa en Java la primera vez que se invoca, y del programa en Java se crea una clase que se empieza a ejecutar en el servidor como un servlet. Diferencia entre Servlet y JSP Enfoque de la programación: un JSP es una página Web con etiquetas especiales y código Java incrustado, mientras que un servlet es un programa que recibe peticiones y genera a partir de ellas una página web. El paradigma OO y la producción de Juegos El paradigma OO Orientación a objetos Reusabilidad Confiabilidad Robustez Extensibilidad Mantenibilidad En todos los niveles del proceso de desarrollo: Análisis, diseño y programación Desafíos en el desarrollo de juegos Inexperiencia en el área en el país. Manejo de un grupo de desarrollo de más de 15 personas. División eficiente de las tareas a realizar. Definición conveniente de las interfaces entre los grupos. Documentación y comunicación intergrupal Elección del mejor paradigma a ser aplicado en base a los objetivos propuestos y los recursos disponibles. OO para enfrentar esos desafíos División del proyecto en subsistemas bien definidos (conjuntos de objetos). El más bajo acoplamiento posible Interfaces definidas como paso de mensajes entre objetos. Uso del UML: caso exitoso de buena documentación y comunicación intergrupal.