Portal    Foro    Buscar    FAQ    Registrarse    Conectarse


Publicar nuevo tema  Responder al tema 
Página 1 de 3
Ir a la página 1, 2, 3  Siguiente
 
Problemas Con Etiquetas De Goto
Autor Mensaje
Responder citando   Descargar mensaje  
Mensaje Problemas Con Etiquetas De Goto 
 

Public Sub VerificarRespaldo()
  If Exist(ArchivoX) Then
    Goto RESPALDO_CORRECTO
  Else
    Goto ERROR_RESPALDO
  Endif
            
  RESPALDO_CORRECTO:
    Message.Info("Se respaldo correctamente en:" & gb.NewLine & ArchivoX)
    ' Goto SALIR     '
    
  ERROR_RESPALDO:
    Message.Error("Ocurrio un error:" & gb.NewLine & Error.Text & gb.NewLine & Error.Where)  esta linea se ejecuta  sino descomento
goto salir. Mi pregunta es porque se ejecuta lo que esta después de la etiqueta no entiendo bien.
  
'   SALIR:
  
End

 




===================
Software libre, programación libre, vida libre es la Public function Libertad()as Invendible
Proyectos: VisorRV1960,Taller2015,Tanteador
https://sourceforge.net/u/v3ctor-full/profile/
Blog: http://novatocodegambas.blogspot.com.uy/
 
v3ctor - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Problemas Con Etiquetas De Goto 
 
NUNCA uses GOTO. Es un recuerdo de los viejos años 60 del código espaguetti e inmanejable. No sé por qué Benoit lo mantiene ya que esas herencias del viejo BASIC son uno de los motivos por los que gambas está tan desprestigiado pero nunca, nunca lo uses.

La prueba del por qué no, la tienes en cómo pierdes el control del programa en sólo 10 líneas. La programación estructurada (que fué superada después por la POO) se inventó, casi, para eliminar el goto y sus problemas.

Puedes hacer lo mismo de mil maneras mucho más ortodoxas.
 



 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Problemas Con Etiquetas De Goto 
 
v3ctor escribió: [Ver mensaje]
porque se ejecuta lo que esta después de la etiqueta no entiendo bien.


Lo que no se ejecuta es solo lo que se coloca entre el comando Goto y la su etiqueta.
Todo lo que està colocado despues de su etiqueta es ejecutable.



shordi escribió: [Ver mensaje]
código espaguetti

....siempre fue un código muy interesante...  
635230295851621105padma-eating-spaghetti-in-bed-aka-the-dream-i-had-last-night
 



 
vuott - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Problemas Con Etiquetas De Goto 
 
Citar:
...siempre fue un código muy interesante...

No creas, allá por los 80 teníamos en el curro un Fujitsu de como dos toneladas con un programa de gestión de personal hecho en cobol con código espaguetti. Eran casi 22.000 lineas de goto parriba, goto pabajo, goto pallá, goto pacá. Imposible de tocar una línea, so pena de descabalgarlo todo, cada vez que había que hacer algo se hacía en un programa aparte.
No es broma el lío en que te puede meter el código espaguetti (la de la foto, sin ir más lejos, te busca un divorcio antes de acabarse el plato)      
 



 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Problemas Con Etiquetas De Goto 
 
shordi escribió: [Ver mensaje]

 te busca un divorcio antes de acabarse el plato


      

...algo me dice que tendré que cambiar restaurante !
 



 
última edición por vuott el Lunes, 27 Abril 2015, 18:50; editado 1 vez 
vuott - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Problemas Con Etiquetas De Goto 
 
gracias a los dos.

shordi  dame un ejemplo equivalente a

for
    for
        for
            si condicion si goto etiqueta
        next
    next
next

etiqueta
 




===================
Software libre, programación libre, vida libre es la Public function Libertad()as Invendible
Proyectos: VisorRV1960,Taller2015,Tanteador
https://sourceforge.net/u/v3ctor-full/profile/
Blog: http://novatocodegambas.blogspot.com.uy/
 
v3ctor - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Problemas Con Etiquetas De Goto 
 
Es simple: Debes dividir el procedimiento en unidades coherentes

procedure uno
for
    for
        for
            si condicion procedure2
        next
    next
next
end

procedure 2
 aviso o lo que sea
end
 



 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Problemas Con Etiquetas De Goto 
 
La verdad es que no entendí la idea de incluir GOTO en gambas.  
 




===================
Gambas Básico
"No es un bug, es una característica no documentada"
 
Shell - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Problemas Con Etiquetas De Goto 
 
Tradición, supongo.
 



 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Problemas Con Etiquetas De Goto 
 
en el código de gambas esta en 234 lineas y tiene algunos usos extraños jajaja
 




===================
Software libre, programación libre, vida libre es la Public function Libertad()as Invendible
Proyectos: VisorRV1960,Taller2015,Tanteador
https://sourceforge.net/u/v3ctor-full/profile/
Blog: http://novatocodegambas.blogspot.com.uy/
 
v3ctor - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Mostrar mensajes anteriores:    
 

Publicar nuevo tema  Responder al tema  Página 1 de 3
Ir a la página 1, 2, 3  Siguiente

Usuarios navegando en este tema: 0 registrados, 0 ocultos y 1 invitado
Usuarios registrados conectados: Ninguno


 
Lista de permisos
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas
No puede adjuntar archivos
Puede descargar archivos
No puede publicar eventos en el calendario



  

 

cron