Академический Документы
Профессиональный Документы
Культура Документы
DESARROLLO DE APLICACIONES I
Manual de materia
ISC. Mara Reina Zarate Nava Enero-Abril 2013
ndice
Objetivo General ................................................................................................................................. 3 Competencias ...................................................................................................................................... 3 Introduccin ........................................................................................................................................ 4 UNIDAD I. PARADIGMAS DE LA PROGRAMACIN ORIENTADA A OBJETOS ....................................... 5 Objetivo: .......................................................................................................................................... 5 Introduccin: ................................................................................................................................... 5 1.1 PARADIGMA DE PROGRAMACIN ESTRUCTURADA ................................................................. 5 Objetivo especfico: ..................................................................................................................... 5 Introduccin: ............................................................................................................................... 5 Conclusin: .................................................................................................................................. 5 1.2 PARADIGMA DE PROGRAMACIN ORIENTADA A OBJETOS ..................................................... 5 Objetivo especfico: ..................................................................................................................... 5 Introducci: ................................................................................................................................. 6 Conclusin: .................................................................................................................................. 7 Conclusin de la Unidad I ................................................................................................................ 7 UNIDAD II. AMBIENTE DE DESARROLLO.............................................................................................. 8 Objetivo: .......................................................................................................................................... 8 Introduccin: ................................................................................................................................... 8 2.1 GENERALIDADES DE LA HERRAMIENTA DE DESARROLLO ......................................................... 8 Objetivo especfico: ..................................................................................................................... 8 Introduccin: ............................................................................................................................... 8 Conclusin: .................................................................................................................................. 9 2.2 CARACTERSTICAS DE LA INTERFAZ DE DESARROLLO ............................................................... 9 Objetivo especfico: ..................................................................................................................... 9 Introduccin: ............................................................................................................................... 9 Conclusin: ................................................................................................................................ 11 Conclusin de la Unidad II ............................................................................................................. 11 UNIDAD III. DISEO Y DESARROLLO DE APLICACIONES .................................................................... 12 Objetivo: ........................................................................................................................................ 12
UNIVERSIDAD TECNOLGICA DEL CENTRO DE VERACRUZ 2 DESARROLLO DE APLICACIONES I Introduccin: ................................................................................................................................. 12 3.1 CONTROLES ............................................................................................................................. 12 Objetivo especfico: ................................................................................................................... 12 Introduccin: ............................................................................................................................. 12 Conclusin: ................................................................................................................................ 13 3.2 Uso de controles (componentes) bsicos. ....................................................................................................................................................... 14 Objetivo especfico: ................................................................................................................... 14 Introduccin: ............................................................................................................................. 14 Conclusin: ................................................................................................................................ 18 3.3 Cuadro de Dilogo ....................................................................................................................................................... 18 Objetivo especfico: ................................................................................................................... 18 Introduccin: ............................................................................................................................. 18 Conclusin: ................................................................................................................................ 19 3.4 Mens ....................................................................................................................................................... 19 Objetivo especfico: ................................................................................................................... 19 Introduccin: ............................................................................................................................. 19 Conclusin: ................................................................................................................................ 19 3.4 Proyectos de formularios mltiples ........................................................................................ 19 Objetivo especfico: ................................................................................................................... 19 Introduccin: ............................................................................................................................. 20 Conclusin: ................................................................................................................................ 25 3.6 Manejo de excepciones........................................................................................................... 25 Objetivo especfico: ................................................................................................................... 25 Introduccin: ............................................................................................................................. 25 Conclusin: ................................................................................................................................ 26 Conclusin de la Unidad III ............................................................................................................ 26
Objetivo General
El alumno desarrollar aplicaciones visuales con acceso a una BD local para administrar la informacin.
Competencias
Implementar sistemas de informacin de calidad, a travs de tcnicas avanzadas de desarrollo de software para eficientar los procesos de las organizaciones. Implementar y administrar sistemas manejadores de bases de datos acorde a los requerimientos de informacin de la organizacin.
Introduccin
En la actualidad la tecnologa ha llegado a todos los rincones del mundo. La globalizacin ha provocado que las empresas tengan que volverse ms competitiva e invertir en la tecnologa, adquiriendo sitios web, aplicaciones de escritorio e incluso en la actualidad aplicaciones mviles. Para cumplir con las demandas de las empresas, se han creado distintos lenguajes de programacin C#, Java, ASP.Net, Python, entre otros. Para el presente curso compete JAVA. Java es lenguaje de programacin que actualmente est en boca de todos y ha creado autntica revolucin. Java 2 se resume en la diversificacin de Java en tres grandes ramas: grandes computadoras, computadoras de escritorio y dispositivos de memoria limitada. Sun Microsystems ha defino al lenguaje java simplemente como Plataforma Java 2 y se ha distribuido en distintas vertientes dependiendo del sector al que se dirige: J2SE, J2EE y J2ME. En este curso se trabajar con Java 2 Standar Edition (J2SE), porque est orientada a computadoras de escritorio y JDK que comprende incorpora clases adicionales para facilitar el desarrollo de aplicaciones Java en donde la interfaz de usuario tiene una importancia muy especial. En la Unidad I se trabajan con los paradigmas de la programacin, dndole especial enfoque a la Programacin orientada a objetos (POO). Esta unidad es fundamental para el resto de plan de estudios, dado que debe quedar bien sentado los conceptos de: objeto, clase, abstraccin, encapsulamiento, herencia y polimorfismo. En la Unidad II el participante se debe familiarizar con el ambiente de desarrollo, para el cuatrimestre actual se trabajar con Eclipse Juno, el cual es perfecto para introducir al alumno a crear aplicaciones desde cdigo y no desde el escritorio. La Unidad III es la clave de la materia en ella se realizarn las operaciones CRUD a la base de datos, para el caso de la base de datos, est se trabajar en Postgresql 9.2. La unidad IV se enfoca a la conexin a la base de datos y la realizacin de reportes. Los reportes se trabajan en Jasper Report. Finalmente, este curso esta descrito de manera gil y sencilla, proporcionando conocimientos prcticos que deben implementar en una empresa, mediante la ESCUELA PRCTICA, lo cual permite realizar sistemas a la medida y proporcionales al participante experiencia laboral en una empresa de la regin.
UNIDAD I. PARADIGMAS DE LA PROGRAMACIN ORIENTADA A OBJETOS Objetivo: El alumno identificar los principales paradigmas de la programacin para diferenciar su mbito de aplicacin. Introduccin:
En esta unidad se presentan los conceptos de la programacin orienta a objetos (POO), los cuales tienen alta repercusin en el lenguaje java. El elemento bsico de la programacin orientada a objetos es una clase, la cual define la forma y comportamiento de un Objeto. Todo en Java gira alrededor de estos conceptos, en esta unidad el participante se adentra en la ampliacin de los conceptos tericos enfocados hacia el estilo de la POO.
UNIVERSIDAD TECNOLGICA DEL CENTRO DE VERACRUZ 6 DESARROLLO DE APLICACIONES I Introduccin: La programacin orientada a objetos se ha convertido en el paradigma ms utilizado en la actualidad. Este paradigma se basa en el uso de las clases y a partir de ellas se crean conceptos que son fundamentales: encapsulacin, herencia y polimorfismo. Ejercicio 1: Solicitar definir los conceptos fundamentos de la programacin orientada a objetos, es decir, los pilares de la POO. CLASE: Una clase es una agrupacin de datos (variables o campos) y de funciones (mtodos) que operan sobre esos datos.
[public] class Classname { // definicin de variables y mtodos ... }
INTERFACE: Una interface es un conjunto de declaraciones de funciones. Si una clase implementa (implements) una interface, debe definir todas las funciones especificadas por la interface. Las interfaces pueden definir tambin variables finales (constantes). Una clase puede implementar ms de una interface, representando una forma alternativa de la herencia mltiple. CONSTRUCTORES: Un punto clave de la Programacin Orientada Objetos es el evitar informacin incorrecta por no haber sido inicializadas correctamente las variables. El segundo paso en la inicializacin correcta de objetos es el uso de constructores. Un constructor es un mtodo que se llama automticamente cada vez que se crea un objeto de una clase. La principal misin del constructor es reservar memoria e inicializar la variable miembro de la clase. Los constructores no tienen valor de retorno (ni siquiera void) y su nombre es el mismo que el de la clase. Su argumento implcito es el objeto que se est creando ENCAPSULACIN: Las clases pueden ser declaradas como pblicas (public) y como package (accesibles slo para otras clases del package). Las variables miembro y los mtodos pueden ser public,
UNIVERSIDAD TECNOLGICA DEL CENTRO DE VERACRUZ 7 DESARROLLO DE APLICACIONES I private, protected y package. De esta forma se puede controlar el acceso y evitar un uso inadecuado HERENCIA: Una clase puede derivar de otra (extends), y en ese caso hereda todas sus variables y mtodos. Una clase derivada puede aadir nuevas variables y mtodos y/o redefinir las variables y mtodos heredados. POLIMORFISMO: Los objetos de distintas clases pertenecientes a una misma jerarqua o que implementan una misma interface pueden tratarse de una forma general e individualizada, al mismo tiempo. Esto, como se ha visto en el ejemplo del Captulo 1, facilita la programacin y el mantenimiento del cdigo. Conclusin: Se puede concluir que en la programacin orientada a objetos las clases definen cualquier objeto que se pueda manipular. Por s mismo, java hace uso de la POO dentro de su cdigo, mostrando muchas clases tiles que se pueden utilizar para incluir desde grfico hasta sonido a una aplicacin.
Conclusin de la Unidad I
La programacin orientada a objetos presenta mucha ventaja sobre la programacin estructurada. Dichas ventajas se pueden poner a prctica en la realidad. La POO facilita la reutilizacin de cdigo, fcil bsqueda y correccin de errores.
Introduccin:
En esta unidad se presentan las generalidades de los ambientes de desarrollo. Para Java existen muchos entornos, pero los que ms se destacan son ECLIPSE y NETBEANS. Para el desarrollo del presente curso se trabajar con Eclipse Indigo.
UNIVERSIDAD TECNOLGICA DEL CENTRO DE VERACRUZ 9 DESARROLLO DE APLICACIONES I Conclusin: ECLIPSE es el entorno de desarrollo que ms se adapta al curso, debido a que requiere menos recursos que NETBEANS y adems si no le instalas los plugins, el participante tendr que realizar todo en cdigo, el cual es el objetivo del curso.
Ejercicion 2: De la herramienta eclipse, determinar los men y botones ms utilizados. Los mens ofrecen el acceso a todas las opciones del Eclipse, pero los botones en las barras de herramientas, permiten que este se ms rpido.
El Project Explorer, permite la fcil apertura y cierra de proyectos. Adems de que brinda un acceso rpido a todo el cdigo fuente, libreras y configuracin.
UNIVERSIDAD TECNOLGICA DEL CENTRO DE VERACRUZ 11 DESARROLLO DE APLICACIONES I Conclusin: ECLIPSE es el entorno de desarrollo que ms se adapta al curso, debido a que requiere menos recursos que NETBEANS y adems si no le instalas los plugins, el participante tendr que realizar todo en cdigo, el cual es el objetivo del curso.
Conclusin de la Unidad II
ECLIPSE es un entorno de desarrollo poderoso, ideal para introducir al participante a la realizacin de interfaces grficos. Contiene una interfaz usable, y varios atajos y ayudas que le facilitara el proceso de desarrollo al programador.
Introduccin:
En esta unidad se presenta al participante la manera de crear interfaces grficas a travs de SWING y el proceso para agregarles controles a las mismas, todo desde cdigo fuente.
3.1 CONTROLES
Objetivo especfico: Identificar el concepto de controles (componentes), tipos, propiedades, mtodos, atributos y eventos. Introduccin: SWING proporciona un conjunto completo de componentes, todos ellos LIGHTWEIGHT, es decir, ya no se usan componentes Peer dependientes del sistema operativo, y adems SWING est totalmente escrito en Java. Ejercicio 1: Solicitar la arquitectura de Swing.
JComponente (Modelo MVC)
Vista MVC
Componente UI
Controlador MVC
Ejercicion 2: Identificar los componentes principales dentro de SWING, junto con sus propiedades, mtodos, atributos y eventos.
UNIVERSIDAD TECNOLGICA DEL CENTRO DE VERACRUZ 13 DESARROLLO DE APLICACIONES I Etiquetas (JLabel) Botones (JButton) Grupo de botones (JRadioButton y JCheckBox) Listas (JList) Cajas combinadas(JComboBox) Texto (JTextField) Tool tips Iconos (ImageIcon) Mens (Toolbar, Menu) Popud Tablas (JTable) Look and Feel
Conclusin: Los componentes que ofrece SWING son muy variados, adems de brindar muchas ventajas sobre el AWT. Durante este tema el participante reforz los conceptos de la programacin orientada a objetos.
public static void main(String[] args) { // Crear una instancia de la clase VSuma VSuma form = new VSuma(); form.crear();//Invocar al mtodo crear form.visualizar(); //Invocar al mtodo visualizar form.eventos();//Invocar al mtodo eventos. } }
Ejercicion 2: Desarrollar un proyecto que permita agregar elementos a un lista desplegable. Los controles a utilizar son: JLabel JCombobox JPanel JButton JTextField
CDIGO:
public class Lista extends JFrame{ //Controles private JPanel pLista; private JComboBox cbPaises; private JLabel lblPais; private JButton btnAgregar; private JTextField txtPais; //Modelo del Combo private DefaultComboBoxModel modelo;
Conclusin: ECLIPSE es el entorno de desarrollo que ms se adapta al curso, debido a que requiere menos recursos que NETBEANS y adems si no le instalas los plugins, el participante tendr que realizar todo en cdigo, el cual es el objetivo del curso.
UNIVERSIDAD TECNOLGICA DEL CENTRO DE VERACRUZ 19 DESARROLLO DE APLICACIONES I Conclusin: Los cuadros de dilogo, en algunos casos, permiten la seleccin de ficheros y suelen ser una venta modal, ya que los cambios que se produzcan en ella, o la seleccin que se haga, repercutirn en el funcionamiento de la aplicacin en general.
3.4 Mens
Objetivo especfico: Identificar los tipos de mens (estndar, contextual y barra de herramientas) y su uso. Introduccin: En esta unidad el participante elaborar aplicaciones que utilicen mens. Ejercicio 1: Solicitar crear un proyecto en el cual se utilicen mens. Los mens estn mucho mejor desarrollados y son ms flexibles en SWING que los que se encuentran habitualmente en otras herramientas, incluyendo paneles y applets. La sintaxis para utilizarlos es:
JMenuBar menuBar = new JMenuBar(); setJMenuBar(menuBar); menuBar.add(btnUniversidad); menuBar.add(btnCarreras); menuBar.add(btnMaterias);
INTERFAZ:
Conclusin: Los mens son muy utilizados en la programacin de aplicaciones. Es importante dejar claro en el participante que existen diferentes estilos y que cada uno puede usar el propio.
UNIVERSIDAD TECNOLGICA DEL CENTRO DE VERACRUZ 20 DESARROLLO DE APLICACIONES I Identificar el proceso a seguir para generar un proyecto con mltiples formas. Introduccin: En esta unidad el participante elaborar aplicaciones que utilicen formularios multiples. Ejercicio 1: Solicitar una aplicacin en la que se realice un men y se incorporen proyectos anteriores. INTERFAZ:
CDIGO:
public class Menu extends JFrame { private JButton btnEncuesta; private JButton btnPaises; private ImageIcon iconoEncuesta; private ImageIcon iconoPais;
btnEncuesta = new JButton("Encuesta",iconoEncuesta); btnEncuesta.setHorizontalTextPosition(SwingConstants.RIGHT); btnPaises = new JButton("Paises",iconoPais); btnPaises.setHorizontalTextPosition(SwingConstants.LEFT); setTitle("MENU"); setLayout(null); setDefaultCloseOperation(EXIT_ON_CLOSE); setSize(400,200); } public void crear(){
} public class Lista extends JFrame{ //Controles private JPanel pLista; private JComboBox cbPaises; private JLabel lblPais; private JButton btnAgregar; private JTextField txtPais; //Modelo del Combo private DefaultComboBoxModel modelo; public Lista(){ pLista= new JPanel(); cbPaises= new JComboBox(); lblPais=new JLabel("Pais:"); btnAgregar=new JButton("Agregar"); txtPais=new JTextField(); //Inicializar el modelo modelo = new DefaultComboBoxModel(); //Ventana setTitle("ComboBox");
lblNombre.setBounds(10, 10, 70, 20); txtNombre.setBounds(80, 10, 300, 20); pEncuesta.setBounds(10,40,370,200); pEncuesta.setBorder(BorderFactory.createTitledBorder(null,"Encuesta",TitledBorder.DEFAULT_JUSTI FICATION,TitledBorder.DEFAULT_POSITION, new Font("Dialog",Font.PLAIN,16),new Color(51,51, 51))); lblSexo.setBounds(15,45,70,20); rbFemenino.setBounds(70,35,90,20); rbMasculino.setBounds(70,55,90,20); ckEdad.setBounds(15, 90, 300, 20); ckHijos.setBounds(15, 120, 300, 20); ckCarrera.setBounds(15, 150, 300, 20); btnMostrar.setBounds(50,250,200,40); add(lblNombre); add(txtNombre); pEncuesta.add(lblSexo); //Se agregan los radioButtons al Grupo. grupo.add(rbFemenino); grupo.add(rbMasculino); pEncuesta.add(rbFemenino);
} }); } }
UNIVERSIDAD TECNOLGICA DEL CENTRO DE VERACRUZ 25 DESARROLLO DE APLICACIONES I Conclusin: Los formularios mltiples permiten el desarrollo de aplicaciones ms enriquecidas y usables para el usuario final. Lo anterior enriquece la experiencia del usuario con la aplicacin.
Las clases derivadas de Exception pueden pertenecer a distintos packages de Java. Algunas perenecen a java.lang (Throwable, Exception, RuntimeException, ); otras a java.io
UNIVERSIDAD TECNOLGICA DEL CENTRO DE VERACRUZ 26 DESARROLLO DE APLICACIONES I (EOFException, FileNotFoundException, ...) o a otros packages. Por heredar de Throwable todos los tipos de excepciones pueden usar los mtodos siguientes: 1. String getMessage() Extrae el mensaje asociado con la excepcin. 2. String toString() Devuelve un String que describe la excepcin. 3. void printStackTrace() Indica el mtodo donde se lanz la excepcin. CDIGO:
try { } catch (Exception e) { // TODO: handle exception }
Conclusin: El manejo de excepciones es muy recomendable, sobre todo cuando se tiene clases cuyo mtodos acceden a base de datos depende de datos insertados por el usuario.
Introduccin:
En esta unidad se presentan los temas necesarios para la conexin a una base de datos local. El manejador de base de datos a utilizar es Postgresql y es necesario contar con un Drive para establecer la conexin.
Conclusin: ECLIPSE es el entorno de desarrollo que ms se adapta al curso, debido a que requiere menos recursos que NETBEANS y adems si no le instalas los plugins, el participante tendr que realizar todo en cdigo, el cual es el objetivo del curso.
UNIVERSIDAD TECNOLGICA DEL CENTRO DE VERACRUZ 30 DESARROLLO DE APLICACIONES I Ejercicio 1: Realizar una aplicacin que permita realizar las operaciones CRUD a la base de datos en el modelo MVC. INTERFAZ:
public boolean eliminar(int idDoctor){ try { if(con.conectar()==true){ String ope= "update doctor set activo=FALSE where iddoctor=?"; PreparedStatement comando = con.getConexion().prepareStatement(ope); comando.setInt(1, idDoctor); comando.executeUpdate(); return true; } else{ return false; } } catch (Exception e) { e.printStackTrace(); return false; } finally{ con.desconectar(); } }
Conclusin de la Unidad IV
ECLIPSE es un entorno de desarrollo poderoso, ideal para introducir al participante a la realizacin de interfaces grficos. Contiene una interfaz usable, y varios atajos y ayudas que le facilitara el proceso de desarrollo al programador.