Twitter se va postulando como la aplicación estrella de la WEB2.0 (no es para tanto) así que si te interesa crear una aplicación con Java (hay API’s para C++, C#, Python, Ruby, etc.) que conecte con Twitter, creo que este ejemplo te puede servir.
Para conectarnos con Twitter usamos una Librería Java llamada Twiter4J:
Twitter4J is a Java library for TwitterAPI.
With Twitter4J, you can easily integrate your application with the Twitter service.
Requeriments
OS: Windows or any flavor of Unix that supports Java.
JVM: JDK1.4.2 or later
License
Twitter4J is released under a BSD-style license.
Así que corre a descargarla a [Twitter4J]
Por cierto esta NO es la única librería para Java, en otros post mostraremos como usar otras librerías.
Una vez que la hemos descargada la agregamos a nuestro proyecto (estoy usando Netbeans). El código de esta sencilla aplicación es el siguiente:
package twitter4j01;
import java.util.List;
import twitter4j.Status;
import twitter4j.Twitter;
/**
*
* @author Seraphinux
*/
public class Main {
public static void main(String[] args) {
System.out.println("Ejemplo con la API Twitter4J");
// Datos del usuario para el loggueo
String tUser = "userTwitter";
String tPass = "passTwitter";
// Creamos el objeto Twitter con nuestros datos
Twitter myTwitter = new Twitter(tUser, tPass);
try{
// Obtenemos los ultimos status publicados
// las ultimas 24hrs, para el usuario loggeado
List<Status> utl = myTwitter.getUserTimeline();
for(Status a : utl){
// Obtenemos el avatar del usuario loggueado
System.out.println("Imagen: " +
a.getUser().getProfileImageURL().toString());
// Obtenemos la fecha de creacion del mensaje
System.out.println("Fecha: " + a.getCreatedAt());
//Obtenemos el mensaje
System.out.println("Mensajes: " + a.getText());
}
}catch(Exception e){
// Por si tenemos errores
System.err.println(e.getMessage());
System.exit(-1);
}
System.exit(0);
}
}
Las funciones que nos proporciona esta sencilla librería (Twitter4J) no solo se limitan a esto, podemos crear nuevos status, mandar y recibir mensajes de los usuario; como quien dice podemos usar y administrar nuestra cuenta Twitter tal y como si estuviéramos en la web.
En posteriores post, crearemos una aplicación con GUI para esta librería, además de que probaremos las otras librerías existentes.
Posts RelacionadosNadie puede negar que las tablas son una excelente forma de mostrar información de manera ordenada, pero hay de tablas a tablas. Desde el simple [TABLE] a soluciones como la que ahora se muestra, las cuales echan mano de jQuery para dotarlas de interactividad.
Hablamos de Ingrid una solución desarrollada con jQuery, algunas de las funciones que ofrece son:
Además de esto puedes usar Ingrid para mostrar datos generados dinámicamente ya sea por ASP, PHP, etc.
Link: Reconstrukt | Ingrid | Demo
Link: Web Resource Depot | jQuery Datagrid: Ingrid
Interesantes consejos a tomar en cuenta si quieres sacarle unas cuantas décimas de segundo a la carga de tu pagina web o blog.
- Conseguir un servidor web rapido y con poca carga
- Aprende a utilizar apropiadamente archivos GIF, JPG y PNG
- Usa XHTML - No Tablas
- Usa CSS de manera inteligente y comprimelo
- Combina y comprime archivos JavaScript
- Administra mejor tus archivos
- Utiliza compresion HTTP
- Mejora tu codificacion
- Utiliza el cache
Link: Web Resource Depot | Tips To Improve Website Speed
Creo que dejare de pensar por el momento en doubles, flotantes, decimales y las pende….jadas de Java.
Una de las cosas mas atractivas que tiene el iPhone, el iPod y el iTunes es sin lugar a dudas su menu (para musica). Ahora imagina que tienes una aplicacion que muestra informacion sobre cd’s de musica o musica en general ¿apoco no se veria chida con un menu al estilo iTunes? Claro que si.
Pues bien esto esta al alcance de tu raton usando JS Coverflow, esta es una libreria JavaScript que te permite darle ese bonito efecto, no solo a portadas de CD’s sino a cualquier conjunto de imagenes que quieras (portadas de libros?).
El demo luce genial, solo con un detalle… la velocidad :S Yo siempre he sido de la idea de que cada cosa en su lugar… una aplicacion o efectos de este tipo se lo dejaria a Flash pero bueno esa es mi opinion. Pruebalo y dime que te parecio.
Link: radnan | JS Coverflow
Link: Sentido Web | Coverflow: visualización de imágenes estilo iPhone
Antes de que les presente la libreria JS que permite esto, dejame comentarte que es el EXIF.
EXIF: es una abreviación de “Exchangeable Image File Format“. Es un estandar para almacenar y mostrar la información sobre el formato de la imágen o de un archivo de sonido. El EXIF se encuentra dentro del mismo archivo, contiene toda la información acerca de la imagen:
- Estructura
- Tamaño
- Codificación
- Cecha de creación
- Adema de otros atributos
Este standar permite que los distintos softwares y scripts puedan leer e interpretar esta información para la manipulación de la imagen.
- FDLog.
Como quien dice si estas haciendo alguna aplicacion (WEB/Escritorio) para administrar imagenes, el EXIF te permitiria etiquetarlas (administrarlas). Solo un detalle:
Así como el EXIF puede “meterse” adentro de una fotografía, también se puede sobrescribir la imagen con la misma imagen sin el EXIF. Esto es lo que hace precisamente Photoshop cuando guarda una imagen optimizada para la web, como ésta tiene que ser lo más liviana posible se omite el exif, por lo que la foto pierde toda la información del exif.
- FDLog.
Ahora despues de enterarnos que es el EXIF, permiteme presentarte una libreria JS (la vi en Ajaxian) que nos permite extrar estos datos: ImageInfo.
Esta libreria:
…detecta el formato de la imagen y luego lee la cabecera y saca información sobre las dimensiones y profundidad de color entre otras cosas….
- Nihilogic.
Como escribia anteriormente, esta libreria seria de gran utilidad para administrar imagenes en alguna aplicacion WEB que use AJAX.
Link: Nihilogic | ImageInfo - reading image metadata with JavaScript
Link: Ajaxian | ImageInfo: reading image metadata (EXIF) with JavaScript
Link: FDLog | Exif, ¿de qué se trata?
Interesante opcion es algo asi como phpMyAdmin pero con AJAX; entre las operaciones que te permitira hacer estan:
- importar datos
- gestionar tablas
- exportar datos
- administrar tablas
- etc…
Tal como indican en Sentido WEB, no es tan completo como phpMyAdmin pero pues esta “bonito“.
Algo con lo que no estoy muy de acuerdo es con la afirmacion: “…el número de consultas disminuye“. Si no mal entiendo por cada accion que realizas se debe de generar una peticion o consulta al servidor, por otra parte no creo que “cargue” todos los datos de un jalon, sino imagina la cantidad de informacion con la que tendria que trabajar el cliente (lo cual haria la aplicacion mas pesada).
Como sea es mas atractivo que phpMyAdmin en donde tiene que cargar toda la interfaz cada vez que realizas una accion. Pero si eso te molesta entonces mejor usa una aplicacion de escritorio y no una aplicacion WEB
Link: SQL Buddy
Link: Sentido Web | SQL Buddy: administrador web de MySQL