Suite aux dires de la section précédente, on peut maintenant se poser la question de l'objectif de la programmation en tant qu'activité. Pour le débutant, cette question semble un peu bizarre, car après tout, le but de la programmation est d'écrire un programme (une suite d'instructions) qui soit conforme à sa spécification, à savoir que le programme fait ce qu'il doit faire.
Pourtant, la réponse n'est pas si simple. La programmation a pluusieurs objectifs :
Ces objectifs sont souvent contradictoires. Des méthodes pour déterminer un compromis raisonnable sont étudiées par la discipline de l'informatique nommée génie logiciel (en anglais : software engineering).
Dans ce livre, notre objectif principal est la maintenabilité. Pourquoi mettre en avant la maintenabilité avant la conformité à la spécification. La raison est la suivante :
Dans ce livre, nous traitons une petite partie de la maintenabilité, à savoir la lisibilité. La lisibilité détermine la facilité de relecture du programme par un programmeur, c'est-à-dire la facilité à comprendre le programme en le lisant.
On peut alors penser à l'activité de programmation comme une activité de communication entre deux personnes : l'auteur et le lecteur. Pendant le développement d'un logiciel, le programmeur doit d'abord penser au lecteur du programme pour s'assurer que son programme sera lisible par ce lecteur. Dans ce livre, ce sera notre objectif principal de programmation.