Guia de Estilos para o Fortran#
Convenção de Nomes#
Em última análise, isso é uma questão de preferência. Aqui está um guia de estilos que gostamos e que parece ter prevalência nos códigos científicos (assim como na Fortran standard library), e recomendamos segui-lo.
Use caixa baixa para todos os construtores Fortran (
do
,subroutine
,module
, …).Use notações matemáticas curtas para variáveis/funções matemáticas (
Ylm
,Gamma
,gamma
,Enl
,Rnl
, …).Para outros nomes use tudo em caixa baixa: tente manter os nomes em uma ou duas sílabas; se há necessidade de mais, use sublinha para manter claro (
sortpair
,whitechar
,meshexp
,numstrings
,linspace
,meshgrid
,argsort
,spline
,spline_interp
,spline_interpolate
,stoperr
,stop_error
,meshexp_der
).
Por exemplo «spline interpolation» pode ser definido por spline_interpolation
, spline_interpolate
, spline_interp
, spline
, mas não splineint
(«int» pode significar integração, inteiro, etc. — muita ambiguidade, até para um contexto claro de código computacional). Isso está em contraste com get_argument()
onde getarg()
é perfeitamente limpo eclaro.
Acima são orientações gerais. Em geral, escolhe o nome correto certamente depende se a primeira sílaba da palavra truncada é suficiente. Normalmente é claro mas nem sempre. Portanto é necessário refletir sobre «tentar manter nomes em 2 sílabas ou menos» uma vez que pode afetar o significado e a simplicidade. Regras simples de nomeação consistente é uma boa ajuda nessa questão – tanto para colaboração quando para a própria sanidade quando revisitar algum código antigo que não tenha visto há um tempo.
Identação#
Use uma indentação consistente para tornar seu código legível. A quantidade da indentação é uma questão de preferência, as escolhas mais comuns são duas, três ou quatro espaços.
Comparação com Outras Linguagens#
Por outro lado, na maioria do resto do mundo da programação, em que o foco é, de uma forma ou outra, em definir e usar grandes conjuntos de objetos complexos, com várias propriedades e comportamentos, conhecidos apenas no código onde são definidas (em oposição a definido pela mesma notação em toda a literatura), nesse caso faz mais sentido usar nomes grandes e mais descritivos. A convenção de nomes vista em linguagens de propósito geral tais como C++ e Python, portanto, são perfeitamente consistente com suas missões de propósito geral. Mas Fortran tem uma missão diferente (computação científica numérica).