Standard de programmation C++ du moteur Frogman

Ce document peut être révisé ultérieurement.

Préface

Nécessité de normes de programmation.

La base de code augmente considérablement au fur et à mesure du développement d'un projet, en fonction de son objectif et de son type. Une base de code incohérente compromet la lisibilité et la maintenabilité, ce qui nuit à la productivité personnelle ou à celle de l'équipe.

Les normes de programmation peuvent ne pas être nécessaires pour les bases de code à usage unique. Le respect d'un guide de style de programmation est nécessaire pour éviter les incohérences de la base de code et entrer dans l'enfer du débogage.

Le code propre n'existe pas, et c'est un conte de fées parce que la perception du code propre est subjective pour les individus ou les équipes. Le but de ce document est d'éviter d'écrire du code illisible et de ne pas suivre religieusement le code propre.

Un exemple simplifié de code obfusqué et profondément imbriqué)

#include <iostream>
#include <cstdlib>

void mergeSort(int *arr, int l, int r) {
    if (l < r) {
        int m = l + (r - l) / 2;
        mergeSort(arr, l, m);
        mergeSort(arr, m + 1, r);
        int n1 = m - l + 1;
        int n2 = r - m;
        int *L = (int*) malloc(n1 * sizeof(int));
        int *R = (int*) malloc(n2 * sizeof(int));
        for (int i = 0; i < n1; i++) L[i] = arr[l + i];
        for (int j = 0; j < n2; j++) R[j] = arr[m + 1 + j];
        int i = 0, j = 0, k = l;
        while (i < n1) {
            if (j < n2) {
                if (L[i] <= R[j]) {
                    arr[k] = L[i];
                    i++;
                } else {
                    arr[k] = R[j];
                    j++;
                }
            } else {
                arr[k] = L[i];
                i++;
            }
            k++;
        }
        while (j < n2) {
            arr[k] = R[j];
            j++;
            k++;
        }
        free(L);
        free(R);
    }
}

Créer le guide de style de programmation (plutôt que d'en adopter d'autres).

De nombreux guides de style et conventions de programmation C++ bien documentés, tels que le guide de style de Google et le standard de codage d'Unreal, sont disponibles en ligne. Malgré leur disponibilité, apprendre les raisons qui sous-tendent les règles est inestimable.

Référence

C++ Coding Standards | Pope's Dev Docs

Principales règles

1. Ne pas pratiquer religieusement le code propre. Essayez de ne pas écrire de code redondant, surdimensionné ou compliqué pour que vos collègues puissent facilement le lire et le comprendre.