[Jde-dev] refactorizacion eldercare y carclassifier

David Lobato dav.lobato en gmail.com
Mar Nov 30 12:56:17 CET 2010


Hola,

Este mensaje va dirigido a los que estáis liados o vais a estarlo en breve
con Eldercare y Carclassifier, aunque si alguien quiere añadir o comentar
algo será bienvenido.

Creo que el primer paso que debemos dar antes de añadir nueva funcionalidad
a lo que ya existe es refactorizar los algoritmos de modo que los
empaquetemos en sendas librerías que nos faciliten su uso/mantenimiento
posteriormente.

El estado actual de Eldercare (y supongo que también del classifier) es un
conjunto de funciones, alguna clase y muchas variables globales, que hacen
un poco complicado ver que está sucediendo y mucho más depurar los errores.
Además de estar bastante cohesionado con la interfaz gráfica.

La idea es sacar toda la funcionalidad del algoritmo y encapsularla,
definiendo un API para su uso. En mi TFM [1] describía un patrón de diseño
para algoritmos iterativos (derivado de patrón Strategy) que creo encaja en
la mayoría de algoritmos que hacemos, y sin duda encaja en el de eldercare y
carclassifier. Así que creo que puede ser un punto de partida para ir
definiendo las clases que tendrá cada algoritmo.

El método de trabajo para refactorizar un algoritmo de los que tenemos hasta
la fecha es simple:

   1. Analizar sus entradas, salidas y parámetros de configuración
   2. Declarar las clases en función de lo encontrado anteriormente (.h)
   3. Definir las clases usando el código que ya tenemos (.cpp)

Los puntos 1 y 2 podemos ir tratándolos en común para llegar a una solución
consensuada. Si os parece empiezo con el punto 1 de Eldercare y continuamos
juntos.

Comentarios??

Un saludo,
David.


[1]
http://svn.jderobot.org/users/dlobato/tfm/trunk/memoria/jderobot5_thesis.pdf

-- 
David Lobato Bravo

Universidad Rey Juan Carlos
c/Tulipan s/n
28933 Móstoles
Madrid, Spain
http://jderobot.org
http://es.linkedin.com/in/davidlobato
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: http://gsyc.escet.urjc.es/pipermail/jde-developers/attachments/20101130/7b3c1441/attachment.htm 


More information about the Jde-developers mailing list