Bienvenido a Java Mexico

Java México es una comunidad de desarrolladores mexicanos en el lenguaje Java.

Este sitio es colaborativo, automáticamente al registrarte obtienes un Blog para compartir tus conocimientos o información acerca del lenguaje. Antes de publicar en tu blog o los foros por favor lee los lineamientos de publicación.

Para dudas y problemas con respecto al lenguaje Java puedes visitar los Foros de Discusión.

Introducción a Apache Ant

En este tutorial introductorio veremos:

  • ¿Qué es Ant?
  • Ant multiplataforma
  • Modo de ejecución
  • El archivo de configuración (build.xml)
  • Estructura del build.xml
  • Tipos de etiquetas
  • Finalizando...

¿Qué es Ant?

Primero que nada, Ant es una herramienta que puede ser utilizada para un sinfín de propósitos, casi siempre orientados al desarrollo con Java, pero puede ser herramienta para un propósitos totalmente diferentes y variados.

Y bien.. pero, ¿Qué es Ant? Ant es una herramienta para realizar tareas un tanto repetitivas, su uso principal es similar al de Make, Nmake, Gnumake o JAM de UNIX. Para poder utilizar Ant es necesario tener la JDK 1.2 o posterior y un parser XML aunque los binarios de Ant ya tienen Apache Xerces2 como XML Parser por default.

La ventaja de Ant sobre herramientas como el Make de UNIX es su característica multiplataforma que explicaré a continuación, ya que Ant se basa en archivos XML de configuración, lo que hace que no dependa de las instrucciones de la shell del sistema operativo.

ISO-8583 en Java

Para inaugurar mi blog, hablaré de un proyecto de software libre que tengo: j8583, también conocido como Java-ISO8583. Es una implementación semi-abstracta del protocolo transaccional de comunicación ISO-8583, que puede ser algo complicado y/o tedioso de implementar. UPDATE: Aquí he puesto una breve descripción en español.

ISO8583 es un protocolo transaccional de comunicación, muy utilizado en bancos, también se usa con puntos de venta (las terminales de tarjeta de crédito por ejemplo), y últimamente también se está usando para transaccionar con carriers de telefonía celular. No voy a entrar a detalle en el protocolo como tal. Se puede obtener (pagando) del sitio de ISO.

Para poder utilizar esta librería, se requiere conocer el protocolo en sí. Tiene licencia LGPL, de modo que se puede usar en aplicaciones comerciales cerradas; si hacen una aplicación que se redistribuye (software que venden, etc) solamente deben entregar los fuentes de la librería, junto con cualquier modificación que le hagan.

Threads en Java

Hola chavos, disculpen que no habia posteado, pero he andado super ocupado con un proyecto y no habia podido entrar...

Creo que me parece interesante postear sobre lo que estoy desarrollando, dentro del proyecto he aprendido un par de cosas que desconocia sobre nuestro hermoso lenguaje JAVA, una de ellas son los Threads, que normalmente no los usamos, pero me he dado cuenta que son totalmente utiles, y de hecho son la base de los procesos que estoy desarrollando.

Pues a los hechos... ¿Qué es un Thread?

Haciendo un pequeño Callback

Bien ahora que tengo un poco de tiempo describiré que es y como funciona un Callback, que en pocas palabras es una técnica que consiste en crear un objeto y que el objeto creado obtenga una referencia de quien lo instanció y pueda enviarle una respuesta.

Más fácil, los callbacks permiten a un objeto A asignar una tarea a un objeto B, es entonces cuando el objeto B puede notificar al objeto A (de manera asincrónica) cuando la tarea es completada.

Con esto separamos muy bien las responsabilidades entre objetos y mejoramos el uso de recursos :-)

Clase A - Cliente.java

package hss;

public class Cliente {
   
    Cliente(){
        Lanza lanza = new Lanza(this, 8);
        lanza.run();
    }
   
    public static void main(String args[]){
        new Cliente();
    }
   
    public void lanzada(){
        System.out.println("Lanzada!!!");
    }

}

Clase B - Lanza.java

package hss;

public class Lanza {
   
    int intervalo;
    Cliente cliente;
   
    Lanza(Cliente cliente, int intervalo){
        this.intervalo = intervalo;
        this.cliente = cliente;
    }
   

Introducción a JSF con Netbeans

En este tutorial se creará una primera aplicación JSF con NetBeans.
Utilizaremos los tags para JSP y un ManagedBean, entenderemos la configuracion básica de el archivo faces-config.xml todo aprovechando las bondades del IDE NetBeans.

Descargarlo en: http://merlinsource.blogspot.com/2006/10/tutorial-introduccin-jsf-con-ne...

Saludos

Tutorial: usar Google Code desde NetBeans

A penas me inscribí hace unas hora y para estrenar, les ofrezco un tutorial sencillo.
Hace unas semanas publiqué este tutorial básico donde utilizamos a Subversion junto con NetBeans para usar Google Code como repositorio para un proyecto.

La dirección del tutorial original en mi blog:
http://merlinsource.blogspot.com/2007/07/tutorial-usar-google-code-desde...

Saludos.

Mejoras a partir de Java 5 y 6 (Recopilación)

Probablemente habrá alguien que no haya notado todas las bondades que nos brindan las nuevas versiones de Java 5 y 6.

Es el motivo por el cual hago la siguiente recopilación.

Java 5

Lanzado en: Tercer trimestre de 2mil4

Características del Java 5
El principal objetivo de esta versión JDK 5 es la facilidad de desarrollo con las nuevas características como tipos de datos genéricos, el loop for-each, autoboxing/unboxing, enums, varargs, static imports y anotaciones.

El JDK 5 está diseñado para hacer que los programas se estructuren de manera más ordenada, más corta y fortificando la seguridad. Además, proporciona un soporte lingüístico para idiomas comunes.

El objetivo de este artículo es entender fácilmente JDK 5, para así empezarlo a usar en nuestro desarrollo. Veamos las diferentes características de la 5.0.

Tipos genéricos, For-Each y Autoboxing/unboxing
Quizá la mejora más significante que tiene el lenguaje Java sea la introducción de los tipos genéricos. Ya no será necesario hacer castings de objetos para subir o bajar en la jerarquía de Clases.

Continúa...

Introducción a Java

En este pdf va un poco de teoria que muchos de los que nos iniciamos en el lenguaje pasamos por alto, y es por que en ocaciones no logramos comprender java de una forma clara, la información es basica.

Descargar aqui PDF

Usando SWT para crear interfaces gráficas (GUI)

¿Qué es SWT?
SWT es un framework para crear interfaces gráficas en Java (como Swing o Awt) que crea a través de JNI (Java Native Interface) interfaces gráficas nativas del Sistema Operativo en donde ejecutemos nuestra aplicación SWT. Esto quiere decir que con el mismo código visualizaremos en cada Sistema Operativo nuestras ventanas como si hubieran sido creadas para ese SO en específico.

Por ejemplo:

Windows

Linux/Gtk

Mac OS X

Motif

Photon

Ahora bien, enumeraré las que a mi parecer son las más visibles ventajas y desventajas de este framework.
Ventajas:

  • * Ya que crea nativamente la GUI dependiendo del SO, es más rápido que Swing
  • * Consume menos recursos
  • * La interfaz gráfica se verá como las demás aplicaciones de tu SO
  • * Está en constante desarrollo

Continúa...

Selenium Remote Control

Es una herramienta para hacer test de las diversas funcionalidades que tenga tu aplicación vía web. En un principio se utilizaba el Selenium IDE que es un plugin que te permite grabar tus pruebas atraves de un plugin para Firefox y desde hace ya un tiempo se saco el Selenium Remote Control para que ejecutes tus test de forma automatica una vez que las hayas desarrollado todas en Java. http://www.openqa.org/selenium-rc/
Y es tan sencillo como lo siguiente:

//Mi primer test_case
import com.thoughtworks.selenium.*;
import junit.framework.*;
public class Portal extends TestCase {
private Selenium sel;
public void setUp() {
sel = new DefaultSelenium("localhost", 4444, "*firefox", "http:///");
sel.start();
}
public void testPortal() throws Exception {
sel.open("http://");
sel.type("userId", "usuario");
sel.type("password", "password");
sel.click("Login");
sel.waitForPageToLoad("30000");
}
public void tearDown() {
sel.stop();
}
}
Distribuir contenido