Hola.
Hoy hemos terminado el último bloque del curso. Ahora mismo acabo de subir el entregable para que sea evaluado.
El entregable no era difícil, pero ha sido con el que más problemas he tenido. En un principio no entendía muy bien la forma de plantearlo, por lo que le pregunté al profesor y me aconsejó sobre cómo enfocarlo y me dio alguna idea para que quedara mejor.
Consistía en implementar un lector de RSS, que leyera las entradas de nuestros blogs. Para realizarlo, utilicé la librería kXML. La verdad es que tuve bastantes problemas para hacerlo funcionar. Uno de ellos, que me costó bastante y al final fue una tontería es que el Eclipse, me reconocía la librería, pero no funcionaba correctamente. El problema estaba en que debía chequearla en la pestaña "Order and Export" del "Configure Build Path".
Otro problema que tuve es que en el XML aparecen etiquetas HTML, por lo que en ocasiones, el parser se volvía loco, pues algunas etiquetas por ejemplo, no se cerraban y lógicamente, no funcionaba bien.
Pero bueno... Tras lidiar con estas complicaciones estoy contento con el resultado y con el bloque.
Estos días miraré algunas cosillas de otras partes del bloque que no he mirado, sobretodo la parte del Bluetooth, de la que he mirado la teoría y cosillas por Internet, pero no le he dedicado mucho tiempo a los ejercicios, pues me daban bastantes problemas y no quería perder mucho tiempo de cara al entregable. Aún así, la idea me ha quedado clara, que es lo importante y a partir de ahí, se puede investigar y tirar para delante.
Y nada... Ya solamente nos queda venir un día, en el que nos despediremos y daremos por terminado el curso, en el que como habéis podido ver, hemos dado muchas cosas.
Un saludo.
sábado, 3 de julio de 2010
domingo, 27 de junio de 2010
Java ME
Hola.
Esta semana hemos comenzado el último bloque del curso: Java para móviles.
El entregable consiste en implementar un lector de RSS, que muestre todas las entradas que los alumnos hemos ido publicando en nuestros blogs.
Hoy he comenzado a darle vueltas al tema y a averiguar como tratarlo. La primera duda que me ha surgido... ¿Cómo llamar a un middlet desde otro?
La aplicación que tenemos que hacer tiene "3 pantallas". En la primera, aparecen los nombres de todos los alumnos. Una vez cliquemos sobre uno de ellos, aparecerán los títulos de sus entradas. De la misma forma, al hacer click sobre una de estas entradas, la visualizaremos en la pantalla del teléfono.
Buscando por Google, he encontrado una página, en la que dice que no debemos hacer 3 middlets, sino un middlet y varias clases que extiendan de la clase Form. La verdad es que me ha ayudado mucho. Os dejo un enlace a la página:
http://wiki.forum.nokia.com/index.php/How_to_use_two_forms
Por otra parte, también he tenido problemas al invocar a los blogs a través de HttpConnection. El problema estaba en que lo llamaba desde esta nueva clase que extiende a Form y no desde el middlet principal (se me quedaba colgado pidiendome confirmación para realizar la conexión) Por tanto, debemos crear un hilo que se encargue de realizar la tarea.
Warning: To avoid potential deadlock, operations that may block, such as
networking, should be performed in a different thread than the
commandAction() handler.
En fin... Este era uno de los puntos que más me interesaban del curso y la verdad es que me está gustando.
Continuaré mejorando el código a lo largo de la semana que viene y en clase le preguntaré algunas cosillas al profesor para que quede lo mejor posible.
Un saludo.
Esta semana hemos comenzado el último bloque del curso: Java para móviles.
El entregable consiste en implementar un lector de RSS, que muestre todas las entradas que los alumnos hemos ido publicando en nuestros blogs.
Hoy he comenzado a darle vueltas al tema y a averiguar como tratarlo. La primera duda que me ha surgido... ¿Cómo llamar a un middlet desde otro?
La aplicación que tenemos que hacer tiene "3 pantallas". En la primera, aparecen los nombres de todos los alumnos. Una vez cliquemos sobre uno de ellos, aparecerán los títulos de sus entradas. De la misma forma, al hacer click sobre una de estas entradas, la visualizaremos en la pantalla del teléfono.
Buscando por Google, he encontrado una página, en la que dice que no debemos hacer 3 middlets, sino un middlet y varias clases que extiendan de la clase Form. La verdad es que me ha ayudado mucho. Os dejo un enlace a la página:
http://wiki.forum.nokia.com/index.php/How_to_use_two_forms
Por otra parte, también he tenido problemas al invocar a los blogs a través de HttpConnection. El problema estaba en que lo llamaba desde esta nueva clase que extiende a Form y no desde el middlet principal (se me quedaba colgado pidiendome confirmación para realizar la conexión) Por tanto, debemos crear un hilo que se encargue de realizar la tarea.
Warning: To avoid potential deadlock, operations that may block, such as
networking, should be performed in a different thread than the
commandAction() handler.
En fin... Este era uno de los puntos que más me interesaban del curso y la verdad es que me está gustando.
Continuaré mejorando el código a lo largo de la semana que viene y en clase le preguntaré algunas cosillas al profesor para que quede lo mejor posible.
Un saludo.
domingo, 20 de junio de 2010
Integración de Tecnologías XML con Servlets
Hola.
Esta semana hemos visto el último punto del bloque, que consiste en integrar todas las partes del tema con un servlet.
La tarea a realizar, que es el siguiente entregable, es una mini aplicación de un banco, que es gestionada por un servlet. Los pasos a seguir son los siguientes:
1) Crear las clases Usuario, Cuenta y Cuentas, que representan al banco.
2) Implementar una clase de utilidades que realice el marshalling para instancias de la clase Cuentas, y generar el documento XML.
3) Crear una plantilla XSLT para transformar el documento XML a HTML.
4) Implementar un método en la clase de utilidades que realice la transformación.
Todo ello es gestionado por el servlet. Inicialmente, el servlet carga una página jsp (con el método doGet), que se corresponde con el login del usuario.
Tras rellenar el formulario, llamamos al servlet (doPost), que llama a los dos métodos de la clase de utilidades y muestra la información de las cuentas del usuario.
Tras realizar el ejercicio, me di cuenta de que no siempre mostraba el documento actual, ya que lo generaba una vez la aplicación había sido desplegada y muchas veces lo cacheaba, de forma que perdíamos el control sobre el mismo. Se lo comenté al profesor y como alternativa, salió la de eliminar la generación del documento XML, es decir, el método marshall devuelve un StringWriter con el contenido XML y este contenido es transformado a HTML por el método transformXML. De esta forma, además, nos evitamos el tener que almacenar un fichero de trámite, que no interesa al usuario final.
Y con esto damos por terminado el cuarto bloque del curso. La semana que viene comenzaremos el último, el de Java para dispositivos móviles.
Un saludo.
Esta semana hemos visto el último punto del bloque, que consiste en integrar todas las partes del tema con un servlet.
La tarea a realizar, que es el siguiente entregable, es una mini aplicación de un banco, que es gestionada por un servlet. Los pasos a seguir son los siguientes:
1) Crear las clases Usuario, Cuenta y Cuentas, que representan al banco.
2) Implementar una clase de utilidades que realice el marshalling para instancias de la clase Cuentas, y generar el documento XML.
3) Crear una plantilla XSLT para transformar el documento XML a HTML.
4) Implementar un método en la clase de utilidades que realice la transformación.
Todo ello es gestionado por el servlet. Inicialmente, el servlet carga una página jsp (con el método doGet), que se corresponde con el login del usuario.
Tras rellenar el formulario, llamamos al servlet (doPost), que llama a los dos métodos de la clase de utilidades y muestra la información de las cuentas del usuario.
Tras realizar el ejercicio, me di cuenta de que no siempre mostraba el documento actual, ya que lo generaba una vez la aplicación había sido desplegada y muchas veces lo cacheaba, de forma que perdíamos el control sobre el mismo. Se lo comenté al profesor y como alternativa, salió la de eliminar la generación del documento XML, es decir, el método marshall devuelve un StringWriter con el contenido XML y este contenido es transformado a HTML por el método transformXML. De esta forma, además, nos evitamos el tener que almacenar un fichero de trámite, que no interesa al usuario final.
Y con esto damos por terminado el cuarto bloque del curso. La semana que viene comenzaremos el último, el de Java para dispositivos móviles.
Un saludo.
domingo, 13 de junio de 2010
JAXB
Hola.
Esta semana hemos visto JAXB (Java Architecture for XML Binding), que es una API que relaciona las clases Java con los documentos XML.
Con JAXB podemos realizar dos tipos de operaciones:
- Marshall: Transformar un objeto a un documento XML.
- Unmarshall: Construir un objeto a partir de un documento XML.
Pero la gracia de JAXB es la de obtener clases Java a partir de un esquema. Para ello, utilizamos xjc (JAXB Binding Compiler) mediante una tarea Ant.
Un saludo.
Esta semana hemos visto JAXB (Java Architecture for XML Binding), que es una API que relaciona las clases Java con los documentos XML.
Con JAXB podemos realizar dos tipos de operaciones:
- Marshall: Transformar un objeto a un documento XML.
- Unmarshall: Construir un objeto a partir de un documento XML.
Pero la gracia de JAXB es la de obtener clases Java a partir de un esquema. Para ello, utilizamos xjc (JAXB Binding Compiler) mediante una tarea Ant.
Un saludo.
domingo, 6 de junio de 2010
Inicio del Bloque IV - XML
Hola.
Esta semana, como comentaba en la anterior entrada, hemos comenzado un nuevo bloque, el cuarto, que trata sobre XML.
En la sesión del viernes, vimos XSL (Extensible Stylesheet Language), que nos permite dar formato a un documento XML.
El sábado, nos centramos en JAXP (Java API for XML Processing) y más concretamente en StAX (Streaming API for XML)
JAXP es un API de Java para el tratamiento de XML, que trabaja con los siguientes parsers:
- DOM (Document Object Model)
- SAX (Simple API for XML)
DOM requiere tener toda la información en memoria y SAX necesita que parseemos todo el documento. Otra alternativa es StAX, un API basada en eventos, que nos permite acceder a la estructura del documento XML de manera sencilla.
No obstante, en la actualidad se utilizan otras tecnologías, como Castor, JAXB o XMLBeans, que permiten mapear un XML en objetos Java.
La semana que viene, daremos un paso más y veremos una de esas tecnologías, JAXB.
Un saludo.
Esta semana, como comentaba en la anterior entrada, hemos comenzado un nuevo bloque, el cuarto, que trata sobre XML.
En la sesión del viernes, vimos XSL (Extensible Stylesheet Language), que nos permite dar formato a un documento XML.
El sábado, nos centramos en JAXP (Java API for XML Processing) y más concretamente en StAX (Streaming API for XML)
JAXP es un API de Java para el tratamiento de XML, que trabaja con los siguientes parsers:
- DOM (Document Object Model)
- SAX (Simple API for XML)
DOM requiere tener toda la información en memoria y SAX necesita que parseemos todo el documento. Otra alternativa es StAX, un API basada en eventos, que nos permite acceder a la estructura del documento XML de manera sencilla.
No obstante, en la actualidad se utilizan otras tecnologías, como Castor, JAXB o XMLBeans, que permiten mapear un XML en objetos Java.
La semana que viene, daremos un paso más y veremos una de esas tecnologías, JAXB.
Un saludo.
domingo, 30 de mayo de 2010
Fin del tercer bloque
Hola.
Esta semana hemos terminado con el bloque más denso del curso, el de J2EE.
Como entregable final, debemos retocar la Tienda Virtual, separando la parte de la vista de los servlets mediante el uso de jsps.
El siguiente bloque trata sobre XML y veremos los siguientes puntos:
Ya os iré comentando conforme los vayamos tratando.
Un saludo.
Esta semana hemos terminado con el bloque más denso del curso, el de J2EE.
Como entregable final, debemos retocar la Tienda Virtual, separando la parte de la vista de los servlets mediante el uso de jsps.
El siguiente bloque trata sobre XML y veremos los siguientes puntos:
- Qué es XML. Documentos válidos y bien formados. DTD y Schema.
- Estándares para el manejo de XML: DOM, SAX y Pull.
- JAXP: Java API for XML Processing.
- Transformaciones: XPath, XSL y XSLT.
- Java Architecture for XML Bindings (JAXB).
- Integración de XML con tecnologías de Servlets, servicios RESTful y clientes ricos.
Ya os iré comentando conforme los vayamos tratando.
Un saludo.
domingo, 23 de mayo de 2010
GWT
Hola.
Esta semana hemos visto el framework de Google GWT. Su punto fuerte es que nos permite desarrollar componentes Web en Java, siendo el compilador el encargado de traducirlo a código HTML y JavaScript.
Como parte práctica, realizamos un ejercicio, que consistía en la implementación de una calculadora. La mayor parte ya estaba hecha y símplemente teníamos que centrarnos en la parte visual y en realizar algunos retoques en la parte del controlador.
Otra alternativa a GWT es "Dojo Toolkit", que es el framework que utilizo yo. No para de crecer día a día y ofrece componentes muy elaborados.
Además, se integra a la perfección con DWR (Direct Web Remoting), que ofrece la posibilidad de realizar llamadas asíncronas, de forma que mediante JavaScript, invocamos a un método del servidor, cuyo resultado será procesado por una callback.
Finalmente, este resultado puede ser tratado por algún componente de Dojo, como por ejemplo un Grid o un Tree, obteniendo unos resultados fabulosos.
Os dejo algún enlace:
http://www.dojotoolkit.org/
http://dojocampus.org/explorer/
http://directwebremoting.org/dwr/index.html
http://wiki.parleys.com/display/PARLEYS/Home#title=Creating%20amazing%20user%20interfaces%20with%20Dojo%20and%20DWR;talk=25591823;slide=1
Un saludo.
Esta semana hemos visto el framework de Google GWT. Su punto fuerte es que nos permite desarrollar componentes Web en Java, siendo el compilador el encargado de traducirlo a código HTML y JavaScript.
Como parte práctica, realizamos un ejercicio, que consistía en la implementación de una calculadora. La mayor parte ya estaba hecha y símplemente teníamos que centrarnos en la parte visual y en realizar algunos retoques en la parte del controlador.
Otra alternativa a GWT es "Dojo Toolkit", que es el framework que utilizo yo. No para de crecer día a día y ofrece componentes muy elaborados.
Además, se integra a la perfección con DWR (Direct Web Remoting), que ofrece la posibilidad de realizar llamadas asíncronas, de forma que mediante JavaScript, invocamos a un método del servidor, cuyo resultado será procesado por una callback.
Finalmente, este resultado puede ser tratado por algún componente de Dojo, como por ejemplo un Grid o un Tree, obteniendo unos resultados fabulosos.
Os dejo algún enlace:
http://www.dojotoolkit.org/
http://dojocampus.org/explorer/
http://directwebremoting.org/dwr/index.html
http://wiki.parleys.com/display/PARLEYS/Home#title=Creating%20amazing%20user%20interfaces%20with%20Dojo%20and%20DWR;talk=25591823;slide=1
Un saludo.
domingo, 16 de mayo de 2010
Continuando con REST
Hola.
Esta semana hemos continuado con la parte de REST. El tema terminó con la realización de un ejercicio, que permitía obtener, crear y actualizar una serie de categorías.
En estos servicios, destacan su simplicidad y el uso de las anotaciones. El profesor nos recalcó la importancia que tienen estas últimas, sobre las que continuaremos profundizando cuando lleguemos a la parte de EJBs.
Lo siguiente que veremos será una pequeña introducción a GWT, que es un framework de Google que permite crear componentes con Java para nuestras aplicaciones Web, siendo el propio compilador el encargado de traducirlo a JavaScript y HTML.
Un saludo.
Esta semana hemos continuado con la parte de REST. El tema terminó con la realización de un ejercicio, que permitía obtener, crear y actualizar una serie de categorías.
En estos servicios, destacan su simplicidad y el uso de las anotaciones. El profesor nos recalcó la importancia que tienen estas últimas, sobre las que continuaremos profundizando cuando lleguemos a la parte de EJBs.
Lo siguiente que veremos será una pequeña introducción a GWT, que es un framework de Google que permite crear componentes con Java para nuestras aplicaciones Web, siendo el propio compilador el encargado de traducirlo a JavaScript y HTML.
Un saludo.
domingo, 9 de mayo de 2010
JSP & REST
Hola.
Esta semana, como indica el título del post, hemos visto JSP y REST.
El anterior entregable consistía en realizar una tienda virtual. Hasta ahora, la parte del cliente la implementábamos en los servlets, escribiendo en estos el código HTML. Con JSP, conseguimos aplicar el patrón MVC, separando las partes del cliente y del servidor y logrando de esta forma que nuestra aplicación sea mucho más mantenible.
Para ello, nos basamos principalmente en el uso de scriptlets, lo que bajo mi punto de vista, es algo "sucio", pues debes escapar todos los bloques Java y no queda demasiado aseado. Además, de esta forma el uso de JavaBeans no tiene mucho sentido, pues como se comentó en clase, si devolvemos una lista, debemos iterar sobre ella mediante un iterator.
El profesor nos comentó alternativas para solucionarlo, como JSTL o Struts. Esta última, la utilizo en mi trabajo y está muy bien. A parte de que el código queda mucho más limpio que con los scriptlets, es mucho más manejable y mantenible. Además, te permite muchas más funcionalidades como por ejemplo:
Por otra parte, también vimos REST. Este es uno de los puntos que me llamó la atención al apuntarme al curso, pues no lo conocía y lo había escuchado bastante. La verdad es que me ha parecido muy interesante, pues accedemos a servicios de una forma muy sencilla con muy poquitas líneas de código.
Todos los servicios Web que he realizado hasta ahora, han sido con SOAP. He buscado información por Internet, para comparar ambas metodologías y he encontrado un artículo muy interesante, que os adjunto a continuación.
http://users.dsic.upv.es/~rnavarro/NewWeb/docs/RestVsWebServices.pdf
Un saludo.
Esta semana, como indica el título del post, hemos visto JSP y REST.
El anterior entregable consistía en realizar una tienda virtual. Hasta ahora, la parte del cliente la implementábamos en los servlets, escribiendo en estos el código HTML. Con JSP, conseguimos aplicar el patrón MVC, separando las partes del cliente y del servidor y logrando de esta forma que nuestra aplicación sea mucho más mantenible.
Para ello, nos basamos principalmente en el uso de scriptlets, lo que bajo mi punto de vista, es algo "sucio", pues debes escapar todos los bloques Java y no queda demasiado aseado. Además, de esta forma el uso de JavaBeans no tiene mucho sentido, pues como se comentó en clase, si devolvemos una lista, debemos iterar sobre ella mediante un iterator.
El profesor nos comentó alternativas para solucionarlo, como JSTL o Struts. Esta última, la utilizo en mi trabajo y está muy bien. A parte de que el código queda mucho más limpio que con los scriptlets, es mucho más manejable y mantenible. Además, te permite muchas más funcionalidades como por ejemplo:
- Validar los campos, sin necesidad de hacerlo mediante JavaScript.
- Uso de interceptores, que son métodos que se ejecutan antes y después de una determinada acción.
- Una acción se puede implementar como simple o múltiple, de forma, que podemos tener un único Action llamado por ejemplo Biblioteca que realice las siguientes acciones:
- Dar de alta un usuario
- Dar de baja un usuario
- Prestar
- Devolver
- Sancionar
Por otra parte, también vimos REST. Este es uno de los puntos que me llamó la atención al apuntarme al curso, pues no lo conocía y lo había escuchado bastante. La verdad es que me ha parecido muy interesante, pues accedemos a servicios de una forma muy sencilla con muy poquitas líneas de código.
Todos los servicios Web que he realizado hasta ahora, han sido con SOAP. He buscado información por Internet, para comparar ambas metodologías y he encontrado un artículo muy interesante, que os adjunto a continuación.
http://users.dsic.upv.es/~rnavarro/NewWeb/docs/RestVsWebServices.pdf
Un saludo.
domingo, 25 de abril de 2010
Diseño Web
Hola.
Esta semana nos hemos centrado en la parte de Diseño Web, viendo HTML y CSS.
Es muy importante separar el código de la presentación, pues son muchos los beneficios que esto conlleva (las páginas cargan antes, son más usables y más facilmente modificables...)
Además, debemos acostumbrarnos a que nuestro código cumpla con las normas del W3C (World Wide Web Consortium)
He encontrado una página que resume muy bien las ventajas del uso de las hojas de estilo:
http://css.infames.org/ventajas.html
La próxima sesión será dentro de dos semanas, en la que continuaremos con J2EE.
Un saludo.
Esta semana nos hemos centrado en la parte de Diseño Web, viendo HTML y CSS.
Es muy importante separar el código de la presentación, pues son muchos los beneficios que esto conlleva (las páginas cargan antes, son más usables y más facilmente modificables...)
Además, debemos acostumbrarnos a que nuestro código cumpla con las normas del W3C (World Wide Web Consortium)
He encontrado una página que resume muy bien las ventajas del uso de las hojas de estilo:
http://css.infames.org/ventajas.html
La próxima sesión será dentro de dos semanas, en la que continuaremos con J2EE.
Un saludo.
domingo, 18 de abril de 2010
Nuevas herramientas
Hola.
Esta semana hemos visto en clase un par de herramientas. Por un lado Bugzilla, que es un sistema de gestión de errores. También hemos visto MyLyn, que viene integrado en el Eclipse como un plug-in y permite al programador establecerse una serie de tareas.
Además, estas dos herramientas se integran muy bien entre ellas, de modo que podemos dar de alta una tarea con MyLyn y añadirla en cualquier repositorio.
Por otra parte, repasamos un poco el Subversion. El profesor nos creó un repositorio a cada uno de nosotros y estuvimos practicando durante un rato.
La semana que viene continuaremos con el bloque de J2EE, viendo HTML y CSS.
Un saludo.
Esta semana hemos visto en clase un par de herramientas. Por un lado Bugzilla, que es un sistema de gestión de errores. También hemos visto MyLyn, que viene integrado en el Eclipse como un plug-in y permite al programador establecerse una serie de tareas.
Además, estas dos herramientas se integran muy bien entre ellas, de modo que podemos dar de alta una tarea con MyLyn y añadirla en cualquier repositorio.
Por otra parte, repasamos un poco el Subversion. El profesor nos creó un repositorio a cada uno de nosotros y estuvimos practicando durante un rato.
La semana que viene continuaremos con el bloque de J2EE, viendo HTML y CSS.
Un saludo.
domingo, 11 de abril de 2010
Semana Santa
Hola.
Durante estas dos semanas no hemos tenido clase, debido a las fiestas de Semana Santa.
He estado mejorando la Tienda Virtual, asociándole una hoja de estilos, aseando y optimizando el código...
También me he centrado en la parte sesiones, pues hay que controlar algunos aspectos, como por ejemplo que el usuario al salir de la aplicación no pierda el contenido de su cesta y que esta esté disponible al iniciar una nueva sesión.
Por otra parte, he mirado el tema de MyLyn y Bugzilla, que veremos en clase la semana que viene. He creado diferentes tipos de tickets, con archivos adjuntos, con diferentes prioridades...
Un saludo.
Durante estas dos semanas no hemos tenido clase, debido a las fiestas de Semana Santa.
He estado mejorando la Tienda Virtual, asociándole una hoja de estilos, aseando y optimizando el código...
También me he centrado en la parte sesiones, pues hay que controlar algunos aspectos, como por ejemplo que el usuario al salir de la aplicación no pierda el contenido de su cesta y que esta esté disponible al iniciar una nueva sesión.
Por otra parte, he mirado el tema de MyLyn y Bugzilla, que veremos en clase la semana que viene. He creado diferentes tipos de tickets, con archivos adjuntos, con diferentes prioridades...
Un saludo.
domingo, 28 de marzo de 2010
J2EE: Tienda virtual
Hola.
Esta semana hemos tenido clase. Por una parte, el profesor nos comentó los errores que tuvimos en el entregable del Chat y por otra, comenzamos con el tercer bloque, viendo acceso a BBDD con JDBC y algo de la parte de Servlets.
El siguiente entregable es una tienda virtual. Una vez el usuario se ha identificado en la aplicación, se le muestran todas las categorías (Aseo, Bebidas, Carnes...) y cuando clique en una de ellas, se le listarán todos los productos de dicha categoría, indicando además su precio. Ahí, el usuario añadirá a su cesta los productos que crea convenientes.
Por último, se le permite la opción de ver la cesta y de generar el pedido, lo cual implica, lógicamente, remitirle una factura.
He estado haciendo la cesta durante estas semanas y he conseguido que funcione, aunque me falta meterme más a fondo para dejarlo aseado y controlar todos los posibles errores.
Ahora estaremos unas semanas sin clases, debido a las Pascuas. Espero que lo paséis bien y nos vemos a la vuelta!
Un saludo.
Esta semana hemos tenido clase. Por una parte, el profesor nos comentó los errores que tuvimos en el entregable del Chat y por otra, comenzamos con el tercer bloque, viendo acceso a BBDD con JDBC y algo de la parte de Servlets.
El siguiente entregable es una tienda virtual. Una vez el usuario se ha identificado en la aplicación, se le muestran todas las categorías (Aseo, Bebidas, Carnes...) y cuando clique en una de ellas, se le listarán todos los productos de dicha categoría, indicando además su precio. Ahí, el usuario añadirá a su cesta los productos que crea convenientes.
Por último, se le permite la opción de ver la cesta y de generar el pedido, lo cual implica, lógicamente, remitirle una factura.
He estado haciendo la cesta durante estas semanas y he conseguido que funcione, aunque me falta meterme más a fondo para dejarlo aseado y controlar todos los posibles errores.
Ahora estaremos unas semanas sin clases, debido a las Pascuas. Espero que lo paséis bien y nos vemos a la vuelta!
Un saludo.
domingo, 21 de marzo de 2010
J2EE
Hola.
Esta semana tampoco hemos tenido clases, pues ha habido puente por el día de San José. De todas formas hay bastantes novedades.
Por una parte, nos han corregido el proyecto del Chat.
Además, hemos iniciado un nuevo bloque, el de J2EE. Comienza con la herramienta de construcción de proyectos Ant y continúa con JDBC y Servlets.
He estado haciendo los ejercicios y a partir de mañana comenzaré con la cesta de la compra, que será nuestro próximo entregable.
El temario se va poniendo más interesante y bonito. Desde la aplicación de la agenda, que comenzamos manejando por consola, hemos pasado a implementar nuestras IGUs y ahora ya un paso más... ¡el acceso a BBDD!
Os dejo algún enlace por si le queréis echar un vistazo:
http://ibatis.apache.org/
http://www.springsource.org/
iBATIS es un framework que facilita el acceso a BBDD. Con JDBC se necesitan demasiadas líneas de código para hacer una simple consulta. Además corremos el riesgo de dejarnos abierta alguna conexión, lo cual es peligroso.
Por otra parte Spring Framework es un marco de trabajo basado en JavaBeans. Entre otras muchas funcionalidades, se integra con JDBC e iBATIS, ofreciendo templates para el acceso a BBDD.
Un saludo.
Esta semana tampoco hemos tenido clases, pues ha habido puente por el día de San José. De todas formas hay bastantes novedades.
Por una parte, nos han corregido el proyecto del Chat.
Además, hemos iniciado un nuevo bloque, el de J2EE. Comienza con la herramienta de construcción de proyectos Ant y continúa con JDBC y Servlets.
He estado haciendo los ejercicios y a partir de mañana comenzaré con la cesta de la compra, que será nuestro próximo entregable.
El temario se va poniendo más interesante y bonito. Desde la aplicación de la agenda, que comenzamos manejando por consola, hemos pasado a implementar nuestras IGUs y ahora ya un paso más... ¡el acceso a BBDD!
Os dejo algún enlace por si le queréis echar un vistazo:
http://ibatis.apache.org/
http://www.springsource.org/
iBATIS es un framework que facilita el acceso a BBDD. Con JDBC se necesitan demasiadas líneas de código para hacer una simple consulta. Además corremos el riesgo de dejarnos abierta alguna conexión, lo cual es peligroso.
Por otra parte Spring Framework es un marco de trabajo basado en JavaBeans. Entre otras muchas funcionalidades, se integra con JDBC e iBATIS, ofreciendo templates para el acceso a BBDD.
Un saludo.
domingo, 14 de marzo de 2010
La Magdalena
Hola.
Esta semana no hemos tenido clase, pues en Castellón son fiestas, aunque hemos realizado la entrega de nuestra segunda tarea, "El Chat".
La semana que viene comenzaremos con un bloque nuevo (J2EE).
Un saludo.
Esta semana no hemos tenido clase, pues en Castellón son fiestas, aunque hemos realizado la entrega de nuestra segunda tarea, "El Chat".
La semana que viene comenzaremos con un bloque nuevo (J2EE).
Un saludo.
domingo, 7 de marzo de 2010
Seguimos con el chat
Hola.
Esta semana he continuado con el chat, aplicando los cambios que me dijo el profesor en clase y mejorando un poco el código.
También he aprovechado para terminar los ejercicios que no había realizado anteriormente del resto de temas. Especialmente, me he centrado en los de la parte de JUnit, los cuales había dejado un poco apartados.
Le hice una interfaz básica a la aplicación de la agenda y después estuve probando con JUnit que se lanzaran las excepciones cuando tocaran, que se obtuvieran los valores deseados...
Un saludo.
Esta semana he continuado con el chat, aplicando los cambios que me dijo el profesor en clase y mejorando un poco el código.
También he aprovechado para terminar los ejercicios que no había realizado anteriormente del resto de temas. Especialmente, me he centrado en los de la parte de JUnit, los cuales había dejado un poco apartados.
Le hice una interfaz básica a la aplicación de la agenda y después estuve probando con JUnit que se lanzaran las excepciones cuando tocaran, que se obtuvieran los valores deseados...
Un saludo.
domingo, 28 de febrero de 2010
Java Avanzado 2 - Chat
Esta semana hemos continuado con la parte de Java Avanzado, concretamente con hilos y sockets.
En clase vimos la teoría e hicimos algún ejercicio. Además, el profesor nos corrigió el anterior entregable y nos comentó todas aquellas cosas que podíamos mejorar.
Ahora debemos terminar el Chat. Le enseñé al profesor como lo llevaba y me estuvo comentando algunas cosas que debía cambiar.
Los próximos días son fiestas en Castellón, por lo que no nos volveremos a ver hasta finales de Marzo. ¡Espero que lo paséis muy bien!
Un saludo.
En clase vimos la teoría e hicimos algún ejercicio. Además, el profesor nos corrigió el anterior entregable y nos comentó todas aquellas cosas que podíamos mejorar.
Ahora debemos terminar el Chat. Le enseñé al profesor como lo llevaba y me estuvo comentando algunas cosas que debía cambiar.
Los próximos días son fiestas en Castellón, por lo que no nos volveremos a ver hasta finales de Marzo. ¡Espero que lo paséis muy bien!
Un saludo.
domingo, 21 de febrero de 2010
Java Avanzado
Esta semana hemos comenzado el segundo bloque del curso, que trata sobre aspectos avanzados de Java. El viernes estuvimos haciendo prácticas con Subversion y JUnit, mientras que el sábado nos centramos en la parte de Interfaces Gráficas.
Hacía ya tiempo, había estudiado algo de Swing por mi cuenta, pero llevaba bastante sin tocarlo y la verdad es que me acordaba de poco...
En esta unidad también entran applets, hilos y sockets. El proyecto que tenemos que entregar es un chat. Esta tarde he comenzado a desarrollarlo. He implementado un servidor y mediante varias consolas he lanzado un telnet en cada una de ellas hacia el servidor, de forma que al enviarle un mensaje, éste lo reenvía a todos los clientes que tiene conectados.
Ahora me falta lo más interesante, que es darle un aspecto visual, así que nada... Manos a la obra!!
Un saludo.
Hacía ya tiempo, había estudiado algo de Swing por mi cuenta, pero llevaba bastante sin tocarlo y la verdad es que me acordaba de poco...
En esta unidad también entran applets, hilos y sockets. El proyecto que tenemos que entregar es un chat. Esta tarde he comenzado a desarrollarlo. He implementado un servidor y mediante varias consolas he lanzado un telnet en cada una de ellas hacia el servidor, de forma que al enviarle un mensaje, éste lo reenvía a todos los clientes que tiene conectados.
Ahora me falta lo más interesante, que es darle un aspecto visual, así que nada... Manos a la obra!!
Un saludo.
domingo, 14 de febrero de 2010
Primera tarea.
El curso ya está en marcha. Hemos terminado la primera unidad y debemos entregar una tarea, que consiste en la implementación de una agenda.
Termino de subir la agenda al aula virtual para que sea evaluada. Le he dedicado muchas horas y he intentado que quede lo mejor posible. Ahora falta esperar la nota...
La semana que viene comenzaremos con el bloque de Java Avanzado...
Ya os contaré.
Un saludo.
Termino de subir la agenda al aula virtual para que sea evaluada. Le he dedicado muchas horas y he intentado que quede lo mejor posible. Ahora falta esperar la nota...
La semana que viene comenzaremos con el bloque de Java Avanzado...
Ya os contaré.
Un saludo.
sábado, 6 de febrero de 2010
¡El curso ha comenzado!
¡Hola a tod@s! Me llamo José Manuel y trabajo como programador, desarrollando aplicaciones Web en J2EE.
Desde hace tiempo, estaba buscando un curso interesante sobre Java y la verdad es que no encontraba ninguno, bien porque no me terminaba de convencer o porque no me venía bien el horario.
Un amigo me envió el enlace con la información de este curso y me interesó mucho desde el primer momento, pues es muy completo y abarca muchos puntos. Algunos los conozco y trabajo con ellos día a día, pero hay otros que no y estoy muy interesado en tratarlos.
Espero que este curso me sirva para ser mejor en mi trabajo. Por ahora las impresiones son muy buenas, pues las clases son amenas y tenemos muchas tareas para hacer por nuestra cuenta, lo cual es duro, pues todos nosotros estamos trabajando o terminando la carrera y tenemos que sacar tiempo para estudiar. No obstante, estoy seguro de que valdrá la pena y aprenderemos muchas cosas durante estos meses.
Y nada... ¡Seguimos en contacto!
Un saludo.
Desde hace tiempo, estaba buscando un curso interesante sobre Java y la verdad es que no encontraba ninguno, bien porque no me terminaba de convencer o porque no me venía bien el horario.
Un amigo me envió el enlace con la información de este curso y me interesó mucho desde el primer momento, pues es muy completo y abarca muchos puntos. Algunos los conozco y trabajo con ellos día a día, pero hay otros que no y estoy muy interesado en tratarlos.
Espero que este curso me sirva para ser mejor en mi trabajo. Por ahora las impresiones son muy buenas, pues las clases son amenas y tenemos muchas tareas para hacer por nuestra cuenta, lo cual es duro, pues todos nosotros estamos trabajando o terminando la carrera y tenemos que sacar tiempo para estudiar. No obstante, estoy seguro de que valdrá la pena y aprenderemos muchas cosas durante estos meses.
Y nada... ¡Seguimos en contacto!
Un saludo.
Suscribirse a:
Entradas (Atom)