Ahora estamos inmersos en la creación de una aplicación con la que poder conectarse al blog y poder leer los post, e incluso publicar post nuevos desde él. Para ello tenemos que crear una interfaz sencilla, que incluye una ventana, un lista, etc...
Aquí puedes ver el código de la pantalla principal... aún no está terminado.
Para ello tendríamos que utilizar la API de Google. Y utilizar diversas librerías de Google.
Nosotros utilizaremos un framework especialmente diseñado para trabajar como filtro entre la aplicación y el framework de Google.
jueves, 29 de mayo de 2008
martes, 27 de mayo de 2008
¿Cómo creo una ventana?
Creamos una clase. Utilizamos la librería import java.awt.Frame;
y ponemos
Frame ventana = new Frame(); <----- Con esta linea creamos la ventana
ventana.setTitle("Mi primera ventanita Java"); <----- Le damos un título
ventana.setVisible(true); <---- La hacemos visible
ventana.setBounds(0, 0, 200, 200); <---- Le damos unas coordenadas y el tamaño.
Pero... si ejecutas tu pequeña aplicación que solo tiene esa ventana, comprobarás
que si intentas cerrarla dándole a la X no se cierra. ¿Por qué?
¡La ventana no tiene aplicada ningún evento!
y ponemos
Frame ventana = new Frame(); <----- Con esta linea creamos la ventana
ventana.setTitle("Mi primera ventanita Java"); <----- Le damos un título
ventana.setVisible(true); <---- La hacemos visible
ventana.setBounds(0, 0, 200, 200); <---- Le damos unas coordenadas y el tamaño.
Pero... si ejecutas tu pequeña aplicación que solo tiene esa ventana, comprobarás
que si intentas cerrarla dándole a la X no se cierra. ¿Por qué?
¡La ventana no tiene aplicada ningún evento!
.JAR
Del inglés JAVA ARchive es un tipo de archivo que nos permite ejecutar aplicaciones hechas en Java.
Se pueden realizar 3 operaciones ásicas con estos archvos: comprimir, descomprimir y ver contenido.
¿Cómo crear uno?
En Eclipse:
Vas a FILE, y le das a Export...
Una vez dentro selccionas JAVA, y JAR File.
Seleccionas lo que quieras introducir en el archivo .JAR que vas a crear. Le pones un nombre y una ubicación y le das a siguiente hasta que te dé la opción de finalizar.
Finalizas y ya está. Ya tienes tu archivo .jar.
En este archivo puedes introducir los paquetes de clases que hayas creado, e introducirlo como librería en cualquier otro proyecto.
Se pueden realizar 3 operaciones ásicas con estos archvos: comprimir, descomprimir y ver contenido.
¿Cómo crear uno?
En Eclipse:
Vas a FILE, y le das a Export...
Una vez dentro selccionas JAVA, y JAR File.
Seleccionas lo que quieras introducir en el archivo .JAR que vas a crear. Le pones un nombre y una ubicación y le das a siguiente hasta que te dé la opción de finalizar.
Finalizas y ya está. Ya tienes tu archivo .jar.
En este archivo puedes introducir los paquetes de clases que hayas creado, e introducirlo como librería en cualquier otro proyecto.
Errores...
Durante la ejecución de un programa pueden ocurrir errores... el programador debe de intentar "cazar" dichos errores para cuando sucedan impedir que el funcionamiento del programa se vea afectado. Para ello el programador utiliza las excepciones.
Estos errores se deben de tratar durante la ejecución del programa, por eso es de vital importancia ver todas los posibles casos de error. Un ejemplo muy bueno sería cuando un programa intenta trabajar con un archivo que por lo que fuera ya no existe en nuestro ordenador... A estos errores se les denomina excepciones.
Por eso el programador debe de preparar su código de forma que se tengan en cuenta estos casos. Debe de estar preparado para poder atrapar dicho error y lanzar un código que ayude a que el programa pueda seguir su curso.
Toda excepción deriva de la superclase java.lang.Throwable. De ella salen dos subclases: Error y Exception.
- Error: error internno o agotamiento de recursos.
- Exception: error en el programa. De esta deriva la subclase RuntimeException.
RuntimeException se debe a una mala programación por parte del programador.
¿Qué se suele hacer para atrapar dichas excepciones?
En Java se utiliza try y catch.
Código explicativo:
try {
Estos errores se deben de tratar durante la ejecución del programa, por eso es de vital importancia ver todas los posibles casos de error. Un ejemplo muy bueno sería cuando un programa intenta trabajar con un archivo que por lo que fuera ya no existe en nuestro ordenador... A estos errores se les denomina excepciones.
Por eso el programador debe de preparar su código de forma que se tengan en cuenta estos casos. Debe de estar preparado para poder atrapar dicho error y lanzar un código que ayude a que el programa pueda seguir su curso.
Toda excepción deriva de la superclase java.lang.Throwable. De ella salen dos subclases: Error y Exception.
- Error: error internno o agotamiento de recursos.
- Exception: error en el programa. De esta deriva la subclase RuntimeException.
RuntimeException se debe a una mala programación por parte del programador.
¿Qué se suele hacer para atrapar dichas excepciones?
En Java se utiliza try y catch.
Código explicativo:
try {
código que se ejecuta mientras no haya error, pero que puede provocarlo
}
catch (ClaseExcepción objetoQueCapturaLaExcepción) {
código que se usará en caso de que se produzca de error
}
}
catch (ClaseExcepción objetoQueCapturaLaExcepción) {
código que se usará en caso de que se produzca de error
}
viernes, 23 de mayo de 2008
TestNG, un plugin interesante para Eclipse
Como bien dice su descriptivo nombre, TestNG existe para testear nuestro código, para buscar errores de lógica, y comprobar que todo funciona como debería.
Un ejemplo de test:
Aquí
¿Qué beneficios sacamos de todo ésto?
Ganar tiempo a la hora de programar. Con estos test podemos tener total certeza de que nuestro código es fiable y de que no dará problemas a largo plazo. Esto evitará de que perdamos nuestro valioso tiempo intentando ver donde está el problema, cual es su causa, etc... cuando estos lleguen.
Página oficial de TestNG
Bájatelo de aquí
¿Cómo se instala en Eclipse?
Un ejemplo de test:
Aquí
¿Qué beneficios sacamos de todo ésto?
Ganar tiempo a la hora de programar. Con estos test podemos tener total certeza de que nuestro código es fiable y de que no dará problemas a largo plazo. Esto evitará de que perdamos nuestro valioso tiempo intentando ver donde está el problema, cual es su causa, etc... cuando estos lleguen.
Página oficial de TestNG
Bájatelo de aquí
¿Cómo se instala en Eclipse?
Colecciones de objetos III
*Map
Es una colección de elementos por pares de datos (clave, valor). Un mapa no puede contener claves duplicadas, en cambio puede haber valores iguales. Una clave puede ser cualquier tipo de objeto. Este interfaz está implementada en la clase HashMap.
Declaración:
Es una colección de elementos por pares de datos (clave, valor). Un mapa no puede contener claves duplicadas, en cambio puede haber valores iguales. Una clave puede ser cualquier tipo de objeto. Este interfaz está implementada en la clase HashMap.
Declaración:
public Map<Producto, Cantidad> productos = new HashMap<Producto, Cantidad>();
Colecciones de objetos II
* Set
En un Set los elementos no están indexados y cada dato tiene una identidad que los diferencia entre sí. Se diferencia de List en que no pueden existir elementos repetidos en él. Esto lo consigue con el método equals (el cuál será redefinido para que se puedan comparar con eficiencia).
Esto es debido a que el método equals solo funciona con objetos que ya conoce. Si creamos un objeto nuevo de una clase que no conoce no los puede comparar porque no los conoce aún. (lógicamente). Eso se hace redefiniendo el método equals
¿Cómo se declara un set?
Set set = new HashSet;
En un Set los elementos no están indexados y cada dato tiene una identidad que los diferencia entre sí. Se diferencia de List en que no pueden existir elementos repetidos en él. Esto lo consigue con el método equals (el cuál será redefinido para que se puedan comparar con eficiencia).
Esto es debido a que el método equals solo funciona con objetos que ya conoce. Si creamos un objeto nuevo de una clase que no conoce no los puede comparar porque no los conoce aún. (lógicamente). Eso se hace redefiniendo el método equals
¿Cómo se declara un set?
Set set = new HashSet;
Colecciones de objetos
También existen las estructuras dinámicas. En estas no se conoce el tamaño, por lo que se puede añadir datos de manera ilimitada.
En Java existen varios tipos de agrupamientos dinámicos. Estos son los list, set y map.
Utilizan la interfaz java.util.collection
* List: (listas enlazadas)
Se utiliza para definir listas enlazadas. Son colecciones de datos en la que sí importa el orden d los datos que la integran.
Alguno de sus métodos más importantes son (además de los del a interfaz Collection):
1. add --->Para añadir datos a la lista.
2. set ---->Para sustituír un elemento por otro.
3. remove ---->Para borrar un elemento de la lista.
4. indexOf ---->Para devolver la posición de un elemento en la lista. Si no lo encuentra devuelve -1.
5. lastIndexOf ---->Busca la posición de un elemento de la lista empezando por el final. Si no lo encuentra devuelve -1.
¿Cómo se declara una lista?
Muy simple.
List Lista = new ArrayList();
¿Cómo se recorre un List?
Para moverse por un List se utiliza un bucle for:
¿Qué son los import?
Si en nuestro programa necesitamos crear un objeto de una clase ya existente deberemos incluir un paquete en nuestro código. Este paquete (package) contendrá las clases de dicho objeto.
En la vida real muchas veces necesitamos conocer un dato... ¿qué hacemos? Buscamos un libro donde venga ese dato. Pues esto es similar. Nuestro programa para poder usar dichos objetos necesita tener una librería de clases. Esta librería son los import. Se ponen al principio del código de esta forma:
Ej: necesitamos crear un objeto mesa. Como sabemos que existe una clase que crea objetos mesa, ¿para qué vamos a programar algo que ya está programado? Pues buscamos el paquete donde está incluída esa clase y la incluímos en nuestro código.
import paquete2.mesa;
Importamos el paquete2 donde está incluída la clase mesa;
En la vida real muchas veces necesitamos conocer un dato... ¿qué hacemos? Buscamos un libro donde venga ese dato. Pues esto es similar. Nuestro programa para poder usar dichos objetos necesita tener una librería de clases. Esta librería son los import. Se ponen al principio del código de esta forma:
Ej: necesitamos crear un objeto mesa. Como sabemos que existe una clase que crea objetos mesa, ¿para qué vamos a programar algo que ya está programado? Pues buscamos el paquete donde está incluída esa clase y la incluímos en nuestro código.
import paquete2.mesa;
Importamos el paquete2 donde está incluída la clase mesa;
La herencia
Una de las cosas más importante, e interesante, de la POO (Programación Orientada a Objetos) es la herencia. Es lo que realmente hace potente a un lenguaje de programación. Las clases pueden herederar características de otras clases. Esto hace que de unas clases básicas el programador pueda crear a su vez otras que utilicen las funcionalidades de aquellas y hacer otras más complejas. Creando así una especie de árbol genealógico de clases, en las que unas son hijas de otras.
Para que una clase herede las características de otra hay que utilizar la palabra clave
extends tras el nombre de la clase.
Los métodos que se pueden heredar son los public y los protected. Los private (como bien dice la palabra) son privados, y no se pueden utilizar fuera de la clase donde se declararon.
Supongo que habrá pensado... si las clases se van creando una de otras... ¿cuál será la clase origen de todas las demás?
Muy buena pregunta. Dicha clase es la Object. Es la raíz de todas las clases. Todas las clases incluyen alguna característica de Object.
Para que una clase herede las características de otra hay que utilizar la palabra clave
extends tras el nombre de la clase.
Los métodos que se pueden heredar son los public y los protected. Los private (como bien dice la palabra) son privados, y no se pueden utilizar fuera de la clase donde se declararon.
Supongo que habrá pensado... si las clases se van creando una de otras... ¿cuál será la clase origen de todas las demás?
Muy buena pregunta. Dicha clase es la Object. Es la raíz de todas las clases. Todas las clases incluyen alguna característica de Object.
viernes, 16 de mayo de 2008
Pero... ¿qué son los atributos? ¿y los métodos?
Dentro de una clase podemos encontrar atributos y métodos.
- Los atributos son las propiedades que tendra el objeto que creamos de esa clase. Los atributos tienen además una definición del tipo de dato que es. Esto significa si la propiedad se trata de un número entero, o una cadena de caracteres, un booleano... etc. No hay que olvidar que además a veces hay que definir el tipo de acceso que tiene dicho atributo. Pues pueden ser públicos, privados, protegidos... Esto hará que se puede visitar desde otros puntos del código o no. Para ello se pone las palabras public, private, protected respectivamente.
Como dato interesante: en Java se puede utilizar en sustitución de dichas palabras, símbolos. Así pues public sería +, private - y protected #.
- Los métodos son funciones declaradas en la clase, en las que se realizarán operaciones. Normalmente reciben parámetros con los que trabajará, y devolverán un resultado, un valor. Este valor puede ser de tipo numérico, booleano,etc.
Un ejemplo de declaración de un método sería:
public String Saludar(){
return("Hola");
}
El ejemplo anterior se trata de un método público "public" que no recibe ningún parámetro "()". Pero devuelve una cadena de carácteres "String" ... "Hola".
jueves, 15 de mayo de 2008
¿Qué es un package?
¿Cómo crear una clase en JAVA?
En Java se crea una clase de esta forma:
public class Mesa {
String tamaño;
int num;
}
Lo que está dentro de { } son los atributos que tendran los objetos que se crearan de esa clase.
Para crear un objeto solo hay que teclear:
Mesa objetomesa = new Mesa();
Y para darle valores a sus atributos:
objetomesa.tamaño="pequeña";
objetomesa.num=1;
Así obtenemos un objeto llamado "objetomesa" que es de la clase Mesa. Y de tamaño pequeña y es la número 1.
public class Mesa {
String tamaño;
int num;
}
Lo que está dentro de { } son los atributos que tendran los objetos que se crearan de esa clase.
Para crear un objeto solo hay que teclear:
Mesa objetomesa = new Mesa();
Y para darle valores a sus atributos:
objetomesa.tamaño="pequeña";
objetomesa.num=1;
Así obtenemos un objeto llamado "objetomesa" que es de la clase Mesa. Y de tamaño pequeña y es la número 1.
miércoles, 14 de mayo de 2008
Filosofía Java
¿Qué es un objeto?
* En el mundo real existen cosas. Estas cosas tienen propiedades como colores, texturas, masa, densidad, e incluso estados. Ejemplo: una bola de billar. Dicha bola tiene un color, un tamaño específico, un peso...
En el ordenador intentamos representar, recrear cosas reales, y mientras más parecidos a la realidad mejor. Para ello está el concepto de "objeto". En Java todo es un objeto por sí mismo. Con sus propiedades, comportamientos, estados...
Un objeto no tiene porqué ser un elemento tangible, también puede ser un concepto.
* Un objeto tiene una identidad, que lo diferencia de los demás objetos.
* Un objeto tiene un estado, que indica la condición de existencia del mismo según el momento. Este estado es cambiante. Ejemplo: la bola de billar puede estar en movimiento, o parada.
* Un objeto tiene un comportamiento, que indica como responde el objeto ante los demás objetos. En el ejemplo anterior sería que haría la bola de billar cuando es empujada por otro objeto, como por ejemplo un palo.
Todo esto nos lleva a pensar en otro elemento importante en la estructura Java: las clases.
Las clases son solo las plantillas para hacer objetos. Un molde. Ejemplo: si al molde (clase) bola de billar le introducimos el color rojo (atributo) nos saldría una bola roja (objeto). En el caso de que fuera el color negro... nos resultaría una bola de billar negra.
La bola roja y la bola negra son objetos distintos, pero son de la misma clase.
* En el mundo real existen cosas. Estas cosas tienen propiedades como colores, texturas, masa, densidad, e incluso estados. Ejemplo: una bola de billar. Dicha bola tiene un color, un tamaño específico, un peso...
En el ordenador intentamos representar, recrear cosas reales, y mientras más parecidos a la realidad mejor. Para ello está el concepto de "objeto". En Java todo es un objeto por sí mismo. Con sus propiedades, comportamientos, estados...
Un objeto no tiene porqué ser un elemento tangible, también puede ser un concepto.
* Un objeto tiene una identidad, que lo diferencia de los demás objetos.
* Un objeto tiene un estado, que indica la condición de existencia del mismo según el momento. Este estado es cambiante. Ejemplo: la bola de billar puede estar en movimiento, o parada.
* Un objeto tiene un comportamiento, que indica como responde el objeto ante los demás objetos. En el ejemplo anterior sería que haría la bola de billar cuando es empujada por otro objeto, como por ejemplo un palo.
Todo esto nos lleva a pensar en otro elemento importante en la estructura Java: las clases.
Las clases son solo las plantillas para hacer objetos. Un molde. Ejemplo: si al molde (clase) bola de billar le introducimos el color rojo (atributo) nos saldría una bola roja (objeto). En el caso de que fuera el color negro... nos resultaría una bola de billar negra.
La bola roja y la bola negra son objetos distintos, pero son de la misma clase.
¿Qué he de hacer? 2ª Parte
Es hora de instalar Eclipse. Sólo tienes que descomprimir el archivo comprimido que te bajastes anteriormente. Y la carpeta llamada Eclipse la copias y la pegas en C:\Archivos de programas.
A continuación sólo tienes que hacer doble click en ejecutable eclipse.exe.
Te pedirá crear la carpeta workspace, que es donde se alojarán todos los proyectos que hagas con eclipse. Aconsejo que borres la ruta impuesta y la pongas tal que así... c:\workspace. Dale a continuar y Eclipse te dará la bienvenida.
A continuación sólo tienes que hacer doble click en ejecutable eclipse.exe.
Te pedirá crear la carpeta workspace, que es donde se alojarán todos los proyectos que hagas con eclipse. Aconsejo que borres la ruta impuesta y la pongas tal que así... c:\workspace. Dale a continuar y Eclipse te dará la bienvenida.
¿Qué he de hacer?
Una vez tengas estos archivos descargados debes de comprobar si tu equipo tiene instalado la máquina virtual de Java. ¿Cómo se hace esto? Muy sencillo.
Dirígete al botón Inicio, y en ejecutar escribe: cmd (para abrir la consola de comandos). Una vez hecho esto se abrirá la mencionada consola. En ella debes teclear: java. Acontinuación se te informará de si lo tienes instalado o no. Si no lo tienes instalado el siguiente paso es instalarte uno de los archivos descargados. El primero de ellos: JDK SE 6.
Haces doble click en el archivo mencionado, y comenzará la instalación. Aceptas la licencia y le das a siguiente. Verás una barra de instalación. Cuando finalice su recorrido verás una pantalla. Le das a siguiente. Y verás otra barra de estado. A continuación saltará la pantalla de finalización de la instalación. Pulsa en Finish.
¡Ya tienes tu máquina virtual Java lista y prepara en tu equipo!
Por último... este enlace puede ser de tu interés. Échale un vistazo.
Dirígete al botón Inicio, y en ejecutar escribe: cmd (para abrir la consola de comandos). Una vez hecho esto se abrirá la mencionada consola. En ella debes teclear: java. Acontinuación se te informará de si lo tienes instalado o no. Si no lo tienes instalado el siguiente paso es instalarte uno de los archivos descargados. El primero de ellos: JDK SE 6.
Haces doble click en el archivo mencionado, y comenzará la instalación. Aceptas la licencia y le das a siguiente. Verás una barra de instalación. Cuando finalice su recorrido verás una pantalla. Le das a siguiente. Y verás otra barra de estado. A continuación saltará la pantalla de finalización de la instalación. Pulsa en Finish.
¡Ya tienes tu máquina virtual Java lista y prepara en tu equipo!
Por último... este enlace puede ser de tu interés. Échale un vistazo.
Bienvenidos
¡Hola! Bienvenidos a mi blog sobre Java. Espero que os guste. Poco a poco iré actualizando el sitio.
Saludos.
Saludos.
Suscribirse a:
Entradas (Atom)