Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

Dividir Proyecto VB6

Estas en el tema de Dividir Proyecto VB6 en el foro de Visual Basic clásico en Foros del Web. Hola a todos, En primer lugar me presento, ya que soy un recién llegado al foro. Llevo unos cuantos años programando en Visual Basic, actualmente ...
  #1 (permalink)  
Antiguo 20/11/2007, 03:27
 
Fecha de Ingreso: noviembre-2007
Mensajes: 1
Antigüedad: 16 años, 5 meses
Puntos: 0
Dividir Proyecto VB6

Hola a todos,

En primer lugar me presento, ya que soy un recién llegado al foro.
Llevo unos cuantos años programando en Visual Basic, actualmente sigo con la versión 6.0

Tengo un pequeño problema/inquietud que resolver, y me gustaría hacer algo de brainstorming, ver otras opiniones. Os explico.

Tengo una aplicación de más o menos 200 formularios, 250 módulos (250) y 10 módulos de clase. Como os podéis imaginar explorar el proyecto es algo tedioso.

La cuestión es que el programa va a continuar creciendo poco a poco, y cada vez es más "pesado" añadir código en él.

¿Cuál es el problema de todo esto? Llevo tiempo dándole vueltas a la cabeza de como poder dividir este proyecto en varios programas independientes. Dejadme que os explique un poco como es el programa, para que me entendáis.

Hay un formulario principal MDI que mantiene un menú superior durante toda la ejecución del programa. Al iniciar, se carga su primer formulario hijo, un menú en el que seleccionas a qué "parte" del programa entrar (permitidme no definir más claramente la palabra "parte"). Cuando desde este menú principal entramos a la parte#1, se cargarán una serie de formularios, a modo de asistente, que te guiarán hasta llegar a un objetivo final. Una vez en el último paso de este asistente, se retornará al menú principal. Actualmente tengo 14 partes distintas, de aprox 10 formularios cada una (algunas tienen 4 formularios y otras 20, depende).
Todas las partes son totalmente independiente entre ellas, no se comunican entre ellas en ningún momento. Disponen de su estructura de variables propias, funciones propias, módulos propios, etc.

Esquemáticamente:

* 1 Formulario MDI
* 1 Formulario Menú principal
* 14 (partes) * 10 (formularios por parte) = 140 formularios "asistentes"
* 60 Formularios auxiliares, que serán utilizados desde cualquiera de esas partes (algo así como globales).


¿Cuáles son los problemas con este programa? Pues varios ;)

1. Las 14 partes que ya están hechas, solamente se tienen que tocar para hacer pequeñas modificaciones. ¿Y qué ocurre al tener todas las partes en un mismo programa? Pues que es más fácil que por error, por mal diseño, etc. modificando algo de la parte#2, toques código de la parte#1, por ejemplo. Me gustaría que las partes fueran totalmente independientes. Una vez hechas y estar funcionando, no hay que tocarlas.
2. Dificultad para trabajar en equipo. No utilizamos VSS ni nada por el estilo. O sea, cada persona tiene su copia entera del programa actualizada. Cuando tiene que cambiar algo lo hace, y pasa los cambios al resto de personas. ¿Problemas? Infinitos. Así nos apañamos, pero me gustaría tener una estructura que permitiese tener a 1 persona trabajando en una parte y a otra en otra cosa, y que luego se pudiesen unificar sin peligro de machacarse el trabajo.
3. La aplicación se vende de forma modular. Un cliente puede tener 1, 2 ó 14 partes. Actualmente, cuando instalamos el programa para un cliente, realmente dentro de su exe tiene todo el código, todas las 14 partes, aunque nosotros por código le hayamos dejado únicamente visible el botoncito de 1 de las partes. ¿Por qué? Todo es un mismo proyecto. Puedo hacer las partes inacesibles desde la aplicación, pero el código está. Me gustaría que esto no fuera así.


Mi idea de como me gustaría que fuera sería algo así como disponer de una aplicación principal, con el MDI, el Menú Principal y todos los Formulario y Módulos (funciones) generales.
Luego me gustaría que cada una de las partes fuese un programa totalmente independiente. De esta forma, podría hacer una modificación en una de las partes teniendo la certeza de que no iba a afectar para nada a otra de las partes. Incluso podríamos 2 personas trabajar cada una en una parte evitando los típicos problemas que ocurren cuando 2 personas trabajan sobre un mismo proyecto.

El problema es que no se como podría hacer esto. ¿Cómo se comunicarían los programas de las partes, con el programa principal? (recordad que no solo hay funciones en el programa principal, sino también formularios auxiliares).

No quiero decir que esta sea la única solución que tengo para "frenar" el crecimiento del programa estructurado de la forma en la cual está. Me gustaría escuchar otras opiniones, para ver si a alguien le ha ocurrido alguna vez lo mismo.

Acepto cualquier idea, cualquier comentario, cualquier sugerencia. Estoy abierto a cualquier cosa. Incluso cambiar de lenguaje de programación (aunque me entren sudores frios solo de pensarlo) si así tuviese la certeza de que podría tener el código dividido y mejor organizado.

Bueno, si alguien ha llegado hasta aquí, gracias y enhorabuena ;p

Un saludo para todos.
  #2 (permalink)  
Antiguo 22/11/2007, 10:51
Avatar de Laforge  
Fecha de Ingreso: noviembre-2004
Ubicación: Galaxia 34, Cuadrante 972, Área 31
Mensajes: 174
Antigüedad: 19 años, 6 meses
Puntos: 2
Re: Dividir Proyecto VB6

...bufff, me siento plenamente identificado... snif, snif, aunque creo que comentar eso sería motivo de unas cuantas reuniones y/o encuentros... más que de un par de mensajes en un foro...

Saludos cordiales y .....ánimo...
__________________
Nunca esperes un mejor momento para abrir esa botella de vino...........nunca llega.

No hay vida después de MySQL
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:20.