Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 19-12-2021
algodritmo algodritmo is offline
Registrado
 
Registrado: dic 2021
Posts: 1
Poder: 0
algodritmo Va por buen camino
Question Opinion sobre codigo

Hola! (perdon que no tengo tildes!)
Me pregunto si me podrian dar un feedback honesto sobre este codigo.
Lo que adjunto son los dos archivos principales de un programa desarrollado por mi suegro. El trabajo en investigacion de nutricion de animales, y en base a eso luego desarrollo una aplicacion Delphi de simulacion de digestion de vacas. Ahora me pregunto si habria posibilidad de vender el codigo a otra empresa.

El tema es que no tiene documentacion de ningun tipo... ni del modelo de simulacion que hay detras, de la idea de como una cosa conecta con la otra (en la vaca), ni tampoco ninguna documentacion del codigo, que en su parte principal es miles de lineas en un solo procedure (tambien hace acceso a archivos, a base de datos, muestra de graficas, etc)

Si pueden dar una mirada bien rapida al codigo y decirme que piensan, si es posible (y cuanto trabajo requeriria) entenderlo, hacer documentacion inversa y eventualmente entender el modelo, exportar partes de la logica a otro software, etc.

Muchas gracias!

(adjunto el codigo)
Archivos Adjuntos
Tipo de Archivo: zip ph6.zip (63,5 KB, 24 visitas)
Responder Con Cita
  #2  
Antiguo 19-12-2021
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.040
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Pides cosas muy amplias, genéricas y algunas no tienen nada que ver con otras.
El código, si funciona, bien está. Si hace lo que se espera que debe hacer y funciona correctamente y sin errores, y si le sirve a alguna empresa/persona... pues estupendo.
En cuanto al código, lo que me ha llamado la atención es la cantidad impresionante de variables globales.
Documentar y demás, pues has de saber lo que hace cada opción, porque alguien ajeno no puede hacerlo, solamente la persona que lo ha hecho.
Responder Con Cita
  #3  
Antiguo 20-12-2021
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.275
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por algodritmo Ver Mensaje
Me pregunto si me podrian dar un feedback honesto sobre este codigo.

Bueno, imagino que tu suegro debe ser investigador y experto en nutrición, no informático, porque el código como tal, a mi entender deja bastante que desear (sólo evaluándolo desde el punto de vista informático).
Sólo viendo las variabnle globales (como comenta Casimiro) o la función NutrientSupply (que tiene unas 4000 líneas) a mi se me ponen los pelos de punta.

Que conste que no quito valor al trabajo de tu suegro, por eso comento que no debe ser informático, o si lo es, debe ser de la vieja escuela.
El trabajo que hay en ese código es tremendo (sólo hay que mirar las líneas de código generadas), pero informáticamente es bastante mejorable.



Cita:
Empezado por algodritmo Ver Mensaje
Ahora me pregunto si habria posibilidad de vender el codigo a otra empresa.
El tema es que no tiene documentacion de ningun tipo... ni del modelo de simulacion que hay detras, de la idea de como una cosa conecta con la otra (en la vaca), ni tampoco ninguna documentacion del codigo, que en su parte principal es miles de lineas en un solo procedure (tambien hace acceso a archivos, a base de datos, muestra de graficas, etc)

Si funciona, siempre puedes venderlo.

Si es un modelo que no cambia, puedes utilizarlo.

En ese caso tendrías que pactar con la empresa qué pasa con el código, quien lo modifica o qué obligaciones tiene cada cual.
Puedes vender el código "tal cual". Si la empresa es consciente de ello, pues adelante. Todo depende de cual sea el acuerdo.



Cita:
Empezado por algodritmo Ver Mensaje

Si pueden dar una mirada bien rapida al codigo y decirme que piensan, si es posible (y cuanto trabajo requeriria) entenderlo, hacer documentacion inversa y eventualmente entender el modelo, exportar partes de la logica a otro software, etc.

Entiendo que eso sólo puede hacerlo alguien que entienda de este tema (nutrición y modelos de simulación).
En ese caso, imagino que repasándolo se podría hacer una idea. contando que los nombres utilizados en las variables y los pocos comentarios le pueden ayudar a hacerse una idea genérica.
Para alguien sin esos conocimientos lo encuentro muy difícil o imposible.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #4  
Antiguo 30-12-2021
engranaje engranaje is offline
Miembro
 
Registrado: may 2011
Posts: 163
Poder: 13
engranaje Va por buen camino
La cosa no parece fácil el libro de Refactoring de Martin Fowler https://refactoring.com/ es un buen comienzo para reorganizar código siguiendo los micropasos de su catálogo. La cosa es que lo primero para poder hacerlo bien es tener una batería de test unitarios que "te chive" cuando rompes algo mientras realizas los cambios.



Para mí aquí tenemos la pescadilla que se muerde la cola, una vez tengas los test unitarios te pueden servir de documentación. Cualquiera podrá ver fácilmente lo que tiene que hacer el código, pero claro para hacer los test tienes que saber que tiene que hacer el código. Me temo que por mi parte no he encontrado aún ningún texto que ayude a enfrentrarse a este problema mecánicamente. Yo me pondría a seguir esos micropasos buscando cada code smell y siguiendo el catálogo sin test unitarios hasta conseguir tener un código más fácil de entender pero hay que tener claro que eso es trabajar sin red. Sin test unitarios no es realmente Refactoring y el peligro de ponerse a cambiar código sin red es cambiar el comportamiento de la aplicación sin darnos cuenta.



No digo que se deba tener miedo pero sí extremar el cuidado. La idea de los micropasos es modificar el código de forma rápida siguiendo el catálogo, casi "sin pensar", eso no puede ser así cuando no se tienen esos test para que ante cualquier despiste te salte el chivato rojo.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Agradecería opinión sobre este código serka La Taberna 1 03-03-2017 09:34:16
Mi opinión sobre Clubdelphi yapt La Taberna 13 27-01-2011 17:44:19
Opinión sobre un código Carmelo Cash OOP 8 04-08-2008 17:53:24
Opinion sobre componentes DevExpress Neeruu Varios 10 21-05-2008 03:54:25


La franja horaria es GMT +2. Ahora son las 01:42:52.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi