Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Coloboración Paypal con ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #33  
Antiguo 20-02-2020
Avatar de mamcx
mamcx mamcx is offline
Moderador
 
Registrado: sep 2004
Ubicación: Medellín - Colombia
Posts: 3.939
Poder: 27
mamcx Tiene un aura espectacularmamcx Tiene un aura espectacularmamcx Tiene un aura espectacular
El asunto es que en una "marea" de codigo es facil perderse:

http://www.dreamsongs.com/ObjectsHaveNotFailedNarr.html


Cita:
Muestrame tus flujos y esconde tus tablas, y me mantendrás estupefacto. Muestrame tus tablas y usualmente no necesitare tus flujos, estos serán obvios.

Show me your flowchart and conceal your tables, and I shall continue to be mystified. Show me your tables, and I won't usually need your flowchart; it'll be obvious.
--Fred Brooks, in Chapter 9 of The Mythical Man-Month
Por lo que veo del codigo, esta muy complicado. Tiene DEMASIADAS constantes, abreviaciones y demás que no dejan claro qué es que. Es mas simple escribir funciones cortas que resuelven tareas especificar, y unirlas reduciendo al minimo el uso de variables de estado. Para simular el uso de "tablas" y hacer evidente la estructura del programa, usa en Delphi Records(mejor pa este caso)/Objetos.

Asi, por ejm:

Código Delphi [-]
type
   TPlaneta = (SE_MERCURY, SE_VENUS, ...); 

TPlanetaMedicion = Record
    nombre: TPlaneta
    ..
    ..
  end;

procedure medir(planeta : TPlaneta): TPlanetaMedicion;

Nota bien lo interesante. Usando records/clases como si modelaras las "tablas" de una BD vas dandole forma a la estructura conceptual del programa, y al usuarlo en funciones/metodos se vuelve claro cual es el flujo de este: "medir TPlaneta me retorna un TPlanetaMedicion".

El programa se AUTO DOCUMENTA cuando usas los nombres/clasificaciones/tipos de datos adecuados. De allí es copiar datos y calcular. Ademas, en Delphi tienes enumeraciones y sets, que son superiores (logicamente) que clavar constantes como ocurre con SE_MERCURY y similares.

Aunque pueden haber expeciones, si un metodo/funcione tiene "muchas" lineas *tal vez* es buena idea partirlo en sub rutinas (o agregas marcas con comentario en las secciones).

El truco que dice Fred Brooks es que estructurar los datos clarifica el programa mientras el codigo "duro" lo obscurece.

Con respecto a copiar arrays, es mejor que aprendas como usar iteraciones y LOW/HIGH para capturar las posiciones del mismo:

http://www.delphibasics.co.uk/Article.asp?Name=Arrays
__________________
El malabarista.

Última edición por mamcx fecha: 20-02-2020 a las 21:22:27.
Responder Con Cita
 



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
LLenar Array con Query RaulA Conexión con bases de datos 2 22-11-2012 16:53:58
Array dentro de un Array Holger PHP 4 03-01-2012 17:27:44
Llenar un array donpedro Varios 5 12-08-2011 16:29:07
llenar array con consulta JULIOCTORRESG Varios 11 02-03-2007 15:13:04
Como Asignar Variable Tipo Array de Tform a otro Array del Mismo tipo morfeo21 Varios 5 17-08-2004 17:39:51


La franja horaria es GMT +2. Ahora son las 09:26:48.


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