Programación 1: El destino inmutable
Recientemente he estado buscando un lenguaje diferente para programar en la máquina virtual de Java (JVM). Existen muchos, y algunos que llaman la atención son los lenguajes funcionales (tales como Scala y Clojure) y los lenguajes cercanos al scripting (Jython y Groovy). Deseo encontrar un lenguaje en el que me permita escribir menos código que [...]
Java: Autentificarse en Google (llamada HTTPS POST) / Google Authentication (HTTPS POST call)
El siguiente es código en Java para hacer un llamada HTTPS POST. Lo probé en JavaSE 6:
–
Next is Java code to do HTTP POST call. I tested it using JavaSE 6:
try {
// Parece no ser necesario / It seems innecessary:
// System.setProperty(“java.protocol.handler.pkgs”, “com.sun.net.ssl.internal.www.protocol”);
// java.security.Security.addProvider(new com.sun.net.ssl.internal.ssl.Provider());
URL url = new URL(“https://www.google.com/accounts/ClientLogin”);
HttpURLConnection connection [...]
Explicación de las opciones para implementar closures en Java
http://www.parleys.com/download/attachments/5443/parleysshare.swf?pageId=5210267
Java: Cómo vetar el cambio en un JComboBox / How to veto item change on JComboBox
Como no existe un VetoableChangeListener para el cambio de un item en un JComboBox (que sería algo así como un VetoableItemListener), se puede usar la siguiente técnica:
Escuchar el evento itemStateChanged en un ItemListener.
Cuando el stateChange() del evento sea ItemEvent.DESELECTED, guardar el item deseleccionado (mediante el método getItem() del evento) en .
Cuando el stateChange() del evento [...]
Java: Cómo comparar cadenas ignorando acentos / How to compare Strings ignoring accents
Hoy enfrenté un problema: comparar cadenas ignorando acentos. Las soluciones propuestas en el artículo Unaccent letters no me gustaron por ser poco eficientes. He aquí la mejor, estándar y más rapida solución: usar la clase java.text.Collator, con un valor PRIMARY en strength:
Collator esMXCollator = Collator.getInstance(new Locale(“es”, “MX”));
sMXCollator.setStrength(Collator.PRIMARY);
boolean iguales = 0 == esMXCollator.compare(“Querétaro”, “Queretaro”); // iguales [...]
iBatis vs Hibernate
iBatis es una biblioteca de Java y .NET para mapear objetos a base de datos, parecida a Hibernate. El artículo Wake Up to iBATIS, the Hibernate Alternative for Spring (DevX) recomienda usar iBatis cuando el modelo de datos es simple.
Sun Microsystems en Second Life
Sun Microsystems es la primera compañía Fortune 500 que lleva a cabo una conferencia en el ambiente virtual en 3D de Second Life (SL): Second Life Press Conference en la página de Sun Multimedia Center.
Guardar datos en el navegador usando Java
Mientras que Dojo tiene un componente para almacenar datos en el browser (mediante Flash), Sun propone untilizar una base de datos. En la plática de Java DB, se muestra un diagrama que muestra que se incrusta la base de datos en un applet, y se controla mediante Ajax. Java DB es la base de datos [...]
Android, la plataforma gratuita de Google para teléfonos celulares
Android es una plataforma de software para teléfonos móviles que es completa, libre y gratuita. Es creada por la Open Handset Alliance y el SDK está hospedado por Google. Está basada en el kernel de Linux 2.6, está hecha en C y C++, define una máquina virtual para Java, define varios servicios (Managers), e incluye componentes reemplazables que las aplicaciones solicitan por el servicio [...]
Bug en Java 5: memory leak
“changing screen resolution [...] a Swing program running on Java 5.0 can leak megabytes of memory every time the system is hibernated”: Ethan Nicholas’s Blog: Leaking Evil. Y yo que me sigo preguntando por qué debemos tener bugs, si la computación es un subproducto de la investigación matemática. ¿O acaso han visto alguna ecuación con [...]



