Ver Mensaje Individual
  #16
Antiguo 28 de marzo de 2023, 13:21
Kuk
Administrador
Última Actividad 19.09.2026 20:11
Posts Posts: 2.500
Likes enviados Enviados: 1037
Likes recibidos Recibidos: 1207

@Josber, efectivamente. Además, no hay que olvidar que la lectura del programa debe ser fácil y la estructura debe permitir hacerlo de manera rápida.

Yo he creado en más de una empresa los estándares de codificación en Cobol, cuyos puntos clave siempre han sido:
  1. En la PROCEDURE (equivalente de Main) - debemos ver los párrafos describiendo qué hace el programa y en qué orden (NO el cómo lo hace). Así al llegar al "main", con una ojeada rápida ya veo si es el programa que me interesa o no. Así que el Main sólo debe contener llamadas a párrafos, nada de instrucciones MOVE, CALL, ADD etc.
  2. Para ver el cómo hace lo que hace el programa, ya iremos a los párrafos concretos que se llaman desde el Main (para ver los detalles).
  3. Máximo nivel de performs anidados: 3
  4. Máximo nivel de IFs anidados: 3
  5. Máximo nivel de capas de software: 3 (Orquestrador, Rutina funcional, Rutina técnica/Accesor)
  6. Indentación obligatoria
  7. NADA de puntos, un sólo punto al final del párrafo en línea separada
  8. NADA de THRU en PERFORM ni párrafos con nobmre-parrafo-EXIT
  9. NADA de secciones
  10. NADA de GO TO salvo párrafo de ABEND
  11. Programa nuevo: máximo 1500 líneas. Nueva función grande = nuevo programa + CALL
  12. Respetar los tipos de campo numérico según plataforma (COMP-5 para Intel X86_64, COMP-3 para IBM Z etc.)

Creo que no se me olvida nada de los puntos importantes.
Esto se lo hago aprender como los 10 mandamientos a los DEVs, y hasta pongo controles en Jenkins de ciertas cosas cuando el Build para comprobarlo automáticamente y como haya cosas que no me cuadran - ABEND como una casa.



NORMAS DEL FORO - para garantizar el buen funcionamiento del Foro.
¿Te han ayudado? NO TE OLVIDES de darle a
¿Quieres dirigirte a alguien en tu post? Notifícale haciendo clic en su Nick
Kuk is offline   Responder Con Cita