Dicas de programação

Dicas gerais sobre como escrever bom código


Dar nome a uma função

Escolher bons nomes de funções é uma parte essencial de escrever bom código. Tem em conta as seguintes recomendações quando dás nome à tua função.

Escolhe nomes de funções com significado

Quando dás nome a uma função, deves ter claro o que ela faz. Por exemplo, a função get(studentId, subject) não tem um nome com significado e, por isso, não é claro o que faz. Pode estar a obter a nota da disciplina do aluno ou a obter o estado da sua matrícula. Um nome melhor seria getStudentGrade(studentId, subject), porque comunica com precisão o que a função faz.

Não faças o nome da função demasiado longo

Tem cuidado para não tornar o nome de uma função demasiado longo. Por exemplo, checkStudentFailOrPassOrMeritOrDistinction(mark) é um nome de função desnecessariamente longo. Quanto mais longo é o nome, mais difícil é de memorizar e mais espaço ocupa no ecrã do computador.

Não faças o nome da função demasiado curto

Por outro lado, um nome de função demasiado curto também pode confundir quem lê o código. Por exemplo, checkFPMD(mark) é um mau nome de função, porque não é imediatamente óbvio o que significa "FPMD".

Usa um nome que toda a gente entenda

O nome da tua função deve ser compreensível para qualquer pessoa que leia o teu código. Por exemplo, um nome de função obscuro como DeathStar() pode ter piada para ti, mas o nome não comunica o seu propósito e pode confundir os outros programadores que leiam o teu código.

Escolhe uma só convenção para dar nome a operações

Mantém-te fiel a uma só convenção para dar nome a operações que fazem a mesma coisa. Por exemplo, se chamares getStudentName() à função que obtém o nome de um aluno, não deves usar um verbo diferente no nome da função que obtém a nota de um aluno (por exemplo, retrieveStudentGrade()).

Evita usar a mesma palavra para dois fins

Por exemplo, não continues a usar add quando queres pôr um grupo de itens numa coleção, se já o usaste para a adição de dois números. Usa antes insert ou append.