ES KAsi UN blog

Blog de Unkasoft, donde hablamos de programación de juegos para móviles, advergaming, marketing móvil, la industria de los videojuegos, metodologías ágiles y todos aquellos temas que nos preocupan en nuestro día a día

16 mayo 2006

Esconder los “bugs” es peligroso

Dentro de las prisas por desarrollar un videojuego o por cerrar una entrega, algunos desarrolladores se encuentran que no han podido solucionar algunos bugs y deciden encubrir dichos bugs controlando las excepciones inesperadas o errores no controlados. Esta práctica que debería ser a ojos de cualquier desarrollador con experiencia una grave práctica, está extendida entre algunas comunidades de desarrolladores.

Es verdad que existe la posibilidad de evitar algunos errores no controlados de una tecnología no desarrollada por nosotros, por ejemplo swing de Java o una implementación de la KVM (J2ME) de algún fabricante de teléfonos, puede ser capturar dichas excepciones y evitar el problema. A veces no hay más remedio si no tenemos control sobre la plataforma que estamos usando. Pero cuando lo que estamos manejando es nuestra lógica y nuestro código, el capturar excepciones genéricas en todos los métodos de forma incontrolada puede llegar a ser una broma de mal gusto e inclusive una pesadilla:

/**
 * Controls "key pressed" events
 * @param key Key that has been pressed
 */
public void processKeyPressed(int key) {
    try {
        // Toda la lógica aquí
        // …
    } catch (Exception ex) {
        // No hacer nada
    }
}

Una pesadilla porque el tiempo de proceso de dichos bloques de excepciones es muy alto e implica que la detección de teclas, el proceso de la IA, los cambios de estado, el control de movimiento, la carga de recursos, el pintado de algunos elementos, la creación y construcción de personajes, el control de eventos y acciones, y en general todo aquello que se ejecuta en cada ciclo del juego, harán que vaya mucho más lento.

Poca potencia en los móviles, puede ser, pero normalmente deberemos vigilar las malas prácticas que a veces cometemos y que los equipos de desarrollo no deberían cometer.

Si en vuestros equipos de desarrollo detectáis esta práctica, normalmente usada por desarrolladores de poca experiencia o que no se preocupan por el resultado de su trabajo, deberéis atajarla de inmediato o podréis encontraros con problema de potencia a ultima hora. Mi recomendación es que hagáis revisiones de código con frecuencia haciendo que desarrolladores que no conozcan un código lo analicen y detecten estos tipos de mala práctica. Algunos desarrolladores se tomarán estas revisiones como algo personal, pero simplemente habrá que hacerles ver que es un tema meramente profesional y que hay prácticas que hacen que se complique mucho el desarrollo de un producto.

Etiquetas: ,


Comentarios:
Publicar un comentario



<< Home

This page is powered by Blogger. Isn't yours?