[17.
Datos y bloques de datos
]
[Tutorial de Fortran]
[19.
Depuración
]
18. Estilo de programación con Fortran
Hay muchos estilos diferentes de programación, pero se intentará dar algunas
guías generales que son de aceptación general.
Portabilidad
Para asegurar la portabilidad del código, se recomienda usar sólo el estándar
de Fortran 77. La única excepción que se ha hecho en este manual es usar
letras minúsculas.
Estructura del Programa
La estructura total del programa deberá ser modular. Cada subprograma deberá
resolver una tarea bien definida. Mucha gente prefiere escribir cada
subprograma en un archivo por separado.
Comentarios
Se repite lo que se había indicado previamente: Escriba código legible,
pero también agregue comentarios al código fuente para explicar lo que se esta
haciendo. Es especialmente importante tener una buena cabezera para cada
subprograma que explique cada argumento de entrada/salida y que hace el
subprograma.
Sangrado
Se debe siempre usar el sangrado apropiado para bloques de ciclos y sentencias if como se mostro en el tutorial.
Variables
Declarar siempre todas las variables. No se recomienda la declaración
implícita. Intentar compactar a 6 caracteres como máximo para nombres de
variables, o asegurarse que los primeros 6 caracteres son únicos.
Subprogramas
Nunca se debe permitir que las funciones tengan "efectos laterales", por
ejemplo no se deben cambiar los valores de los parámetros de entrada. Usar
subrutinas en tales casos.
En las declaraciones separar los parámetros, bloques comunes y variables
locales.
Minimizar el uso de bloques comunes.
Goto
Minimizar el uso de la sentencia goto. Desafortunadamente se requiere usar goto en algunos ciclos, ya que el ciclo while no es estándar en Fortran.
Arreglos
En muchos casos es mejor declarar todos los arreglos grandes en el programa
principal y entonces pasarlos como argumentos a las distintas subrutinas. De
esta forma toda la asignación de espacio es hecha en un sólo lugar. Recordar
que se deben pasar también las dimensiones principales. Evitar el inecesario
"redimensionamiento de matrices".
Asuntos de Eficiencia
Cuando se tenga un ciclo doble que esta accediendo a un arreglo bidimensional,
es usualmente mejor tener el primer índice (renglón) dentro del arreglo más
interno. Lo anterior por el esquema de almacenamiento en Fortran.
When you have a double loop accessing a two-dimensional array,
it is usually best to have the first (row) index in the
innermost loop. This is because of the storage scheme in Fortran.
Cuando se tengan sentencias if-then-elseif con condiciones múltiples,
intentar colocar primero aquellas condiciones que vayan a ser las más
frecuentes que ocurran.
[17.
Datos y bloques de datos
]
[Tutorial de Fortran]
[19.
Depuración
]