links for 2007-08-03

PreciseJava: buenas técnicas de programación en Java

Aunque normalmente hablamos de PHP, Java también es un lenguaje a tener en cuenta, muchos proyectos en empresas se desarrollan en Java, habiendo un problema bastante frecuente: “te doy un curso y te mando a este proyecto que se hace en Java”. ¿Qué suele ocurrir? que muchas veces no se aprende lo suficiente y las carencias son importantes.

En PreciseJava agrupan consejos y tutoriales Java que muestran cómo desarrollar código más óptimo en Java. Está dividido en dos categorías J2EE y J2SE, y en cada categoría encontraremos otras subcategorías que nos mostrarán técnicas específicas. Por ejemplo, encontraremos comentarios sobre EJB, Servlets, JSP, JDBC, o consejos sobre Strings, excepciones, objetos.

A mí si me gustaría comentar dos cosas, evitar el uso de las Hashtables, sí, son muy cómodas, pero requieren muchos recursos. Y sobre como inicializar Strings:

// Correcto
String s = "Hola Mundo";
// No tan eficiente (incorrecto)
s = new String("Hola Mundo");

En el segundo ejemplo se están creando dos objetos String, por lo que se está malgastando recursos.

PreciseJava.com

Vía / dzone

Lista de buscadores de código

No reinventar la rueda es algo fundamental a la hora de desarrollar cualquier tipo de aplicación, nos ahorra tiempo de desarrollo y de análisis. Con frecuencia solemos reutilizar código generado con anterioridad, pero otras veces es necesario tirar de Internet para buscar un ejemplo de lo que andamos buscando. En este caso, nada mejor que buscadores especializados:

  • Koders.com: el mejor de todos, fácil de usar, además de encontrar código, nos permite encontrar nuevos proyectos open source.
  • O’Really Labs Code Search: una base de datos con 123.000 ejemplos y más de dos millones de líneas de código.
  • Google Code Search: perteneciente a Google Labs, permite usar operadores para refinar la búsqueda, como por ejemplo lang: o file:.
  • Codase: ofrece uno de los mejores resultados entre los buscadores de código.
  • Krugle: permite buscar código en proyectos open source y compartir tu código.
  • JExamples: buscador de código Java.
  • JSourcery: búsqueda en APIs de Java open source.
  • Merobase: permite encontrar, compartir y reusar componentes de software.
  • All The Code: buscador de código, preferiblemente Java, pero nuevos lenguajes ser añadirán en breve.
  • CSourceSearch
  • EMC Dev Network: búsqueda en más de 300 mil líneas de código.

Top 10+ source code search engines

Vía / dzone

20 recursos MySQL

Una buena lista de aplicaciones, enlaces, recursos, tutoriales sobre MySQL que nos pueden ayudar a trabajar con esta base de datos.

Herramientas de diseño y administración

  • MyDB Studio: aplicación para administracion de MySQL con alguna utilidad para diseño.
  • SQLYog: excelente GUI para diseño y administración de bases de datos MySQL.
  • WWW SQL Designer: diseñador Ajax, tiene muchas características que normalmente solo están disponibles en aplicaciones offline.
  • OpenOffice.org Base: aunque es inusual, realmente tiene un buen soporte para trabajar con MySQL.
  • AutoMySQLBackup: para la creación de scripts para realizar backups.
  • PHPMyAdmin: el más famoso de los administradores de MySQL vía web.

Herramientas de seguridad

  • SQLIer: Herramienta para SQL Injection que indicando una URL, intenta hacer todo lo posible para realizar SQL Injection.
  • SQLMap: Otra utilidad para SQL Injection que admite MySQL, PostgreSQL y MSSQL.
  • Absinthe: utilidad disponible para Linux y Windows que intenta forzar tu servidor con ataques SQL injection.
  • SQID: SQL Injection mediante línea de comandos creado con Ruby.

Optimización

Conocimientos

20 Indispensible MySQL Resources

Vía / dzone

links for 2007-08-01

Spinner Control: control HTML mediante Prototype

Spinner Control es una librería creada con Prototype que permite crear controles HTML que modifican su valor mediante botones incluidos en ellos. Ya hace tiempo implementamos nuestro propio controlador, por lo que no es necesario explicar cómo hacerlo.

spinner.png

Entre las características que ofrece encontramos lo siguiente:

  • Pulsación continua del botón considerada
  • Aumento de velocidad según el tiempo
  • Tiene en cuenta los cursores arriba y abajo
  • Trabaja con números enteros, decimales y arrays.
  • Intervalo configurable
  • Máximo y mínimo configurable
  • Fuerza máximo y mínimo cuando pierde el foco
  • Uso de prefijos y sufijos
  • Ignora parte no numéricas escritas

Spinner Control

Vía / dzone

|

iUI: librería Javascript/CSS para emular iPhone

iUI es una librería Javascript/CSS creada por Joe Hewitt, co-fundador de Firefox y creador de Firebug, que permite emular el lenguaje nativo visual del iPhone.

iui.png

Entre las características que nos ofrece encontramos:

  • Controles UI
  • Enlaces a páginas externas vía Ajax
  • Envío de formularios vía Ajax
  • Soporte para historial del navegador

iUI

Vía / Ajaxline

|

BlueShoes: framework y CMS para PHP

blueshoes.pngBlueShoes es un framework y CMS escrito en PHP, con soporte para MySQL y para Oracle y MSSQL. Ofrece a los desarrolladores soluciones para necesidades reales, para lo cual disponemos de componentes que manejo de usuarios, sesión, grupo de usuarios, tratamiento de excepciones, logs, formularios y mucho más.
Dispone de la posibilidad de añadir plugins, pero los 3 que ofrece hasta ahora no les veo mucha utilidad. Esperemos que vayan en aumento con el tiempo.
Existe una versión gratuita y otra enterprise que por un precio nos ofrece más características. No es el framework que más me ha gustado, pero cuanta más variedad dónde podamos elegir, mejor.
BlueShoes

POG: generador de objetos para PHP

pog.pngPOG (PHP Object Generator) es una aplicación open source que genera código limpio y válido para PHP4 y PHP5 para generar objetos. Otra característica del código que genera es que es sencillo de seguir.
El tiempo que podemos ahorrar a la hora de desarrollar nuestras aplicaciones puede ser considerable. También nos ofrece la aplicación online para poder crear nuestros objetos. Habrá que indicar qué versión de PHP queremos, el nombre del objeto y los atributos del objeto: nombre y tipo de dato, el cual coincidirá con los posibles tipos de datos de MySQL. A parte de ofrecernos el código PHP, en los comentarios PHP encontraremos la sentencia para crear la tabla en MySQL.
PHP Object Generator
Vía / International PHP Magazine