Coding style/fr: what changed
Revision 1 to 2. Removed lines have a minus sign; added lines have a plus sign.
| Old | New | Line | |
|---|---|---|---|
| 1 | + | ## Contents | |
| 2 | + | ||
| 3 | + | * 1 Compilateur FPC et RTL | |
| 4 | + | * 1.1 Introduction | |
| 5 | + | * 1.2 Mots-clés | |
| 6 | + | * 1.3 Espaces | |
| 7 | + | * 1.4 Tabulations | |
| 8 | + | * 1.5 Indentation | |
| 9 | + | * 1.6 Retour à la ligne | |
| 10 | + | * 1.7 Divers | |
| 11 | + | * 1.8 Exemples | |
| 12 | + | * 2 FCL | |
| 13 | + | * 3 Autres paquets livrés avec FPC | |
| 14 | + | * 4 Lazarus | |
| 15 | + | * 5 Voir aussi | |
| 16 | + | ||
| 1 | 17 | # Compilateur FPC et RTL | |
| 2 | 18 | ||
| 3 | 19 | ## Introduction | |
| 4 | 20 | ||
| 5 | - | ||
| 21 | + | Certains personnes pourraient penser que le style de codage employé dans le code sourec du compilateur FPC et de la RTL de base est légèrement étrange. Mais il est utilisé depuis des années et n'est pas sujet à discussion. Donc prenez ce qui suit comme une norme à suivre. | |
| 6 | 22 | ||
| 7 | 23 | ## Mots-clés | |
| 8 | 24 | ||
| 9 | - | ||
| 25 | + | Ecrivez tous les mots-clés en _minuscules_. Il n'est pas besoin de les rendre illisible en les écrivant en majuscules. Les EDI modernes supportent la mise en évidence syntaxique, donc les mots-clés seront facilement reconnaissables. | |
| 10 | 26 | ||
| 11 | 27 | ## Espaces | |
| 12 | 28 | ||
| 13 | - | ||
| 29 | + | N'utilisez pas d'espaces autour des opérateurs, parenthèses etc. p.exe. écrivez `p:=p+i;` au lieu de `p := p + i ;`. | |
| 14 | 30 | ||
| 15 | 31 | ## Tabulations | |
| 16 | 32 | ||
| 17 | - | ||
| 33 | + | Ne pas utiliser de caractères TAB ([[ASCII/fr|ASCII]] HT, 0x09). Il n'y a pas de réglages par défaut standard, dont l'aspect des codes source utilisant des caractères TAB dépendront des règlages du client. Il peut en résulter un affichage chaotique des codes source. Il faut aligner avec espaces (voir aussi Indentation). | |
| 18 | 34 | ||
| 19 | - | ||
| 35 | + | Il reste possible d'activer le remplacement de ce caractère par un nombre d'espaces défini, 2 pour être cohérent avec le paragraphe Indentation. Ainsi, chaque fois que vous utiliserez la touche TAB, les espaces correspondants seront insérés à sa place dans le code source. | |
| 20 | 36 | ||
| 21 | 37 | ## Indentation | |
| 22 | 38 | ||
| 23 | - | ||
| 39 | + | Le pas d'indentation est toujours de 2 caractères. | |
| 24 | 40 | ||
| 25 | - | ||
| 41 | + | Ne jamais placer de _begin_ sur la même ligne que while..do/if..then/..., mais toujours sur sa propre ligne (et indentez-le par rapport au while/if/...). | |
| 26 | 42 | ||
| 27 | 43 | ## Retour à la ligne | |
| 28 | 44 | ||
| 29 | - | ||
| 45 | + | Les retours à la ligne sont configurés à la manière de la plupart des programmes Object Pascal (NdT : ce n'est pas très descriptif). Séparer les routines par 3 retours à la ligne ce qui mettra deux ligne blanches entre les deux routines. | |
| 30 | 46 | ||
| 31 | 47 | ## Divers | |
| 32 | 48 | ||
| 33 | - | ||
| 34 | - | ||
| 35 | - | ||
| 36 | - | ||
| 37 | - | ||
| 38 | - | ||
| 39 | - | ||
| 40 | - | ||
| 41 | - | ||
| 42 | - | ||
| 43 | - | ||
| 49 | + | Vous pouvez remarquer que le `else` dans des `if`s consécutifs n'est pas indenté (on se ramène en quelque sorte à une instruction case...of) : | |
| 44 | 50 | ``` | |
| 45 | - | ||
| 46 | - | ||
| 51 | + | if x then | |
| 52 | + | begin | |
| 53 | + | .. | |
| 54 | + | end | |
| 55 | + | else if y then | |
| 56 | + | begin | |
| 57 | + | ... | |
| 58 | + | end; | |
| 59 | + | ``` | |
| 47 | 60 | ||
| 48 | - | ||
| 49 | - | ||
| 50 | - | ||
| 51 | - | ||
| 61 | + | Découpez toutes les conditions if sur plusieurs lignes, ainsi pas de "if (x) and (y) then" mais | |
| 52 | 62 | ``` | |
| 63 | + | if x and | |
| 64 | + | y then | |
| 65 | + | .. | |
| 66 | + | ``` | |
| 53 | 67 | ||
| 54 | - | ||
| 68 | + | (exception possible des "if x and y then" avec des simples variables booléennes) | |
| 55 | 69 | ||
| 56 | 70 | ## Exemples | |
| 57 | 71 | ||
| 58 | - | ||
| 72 | + | A quoi cela ressemble peut être facilement contrôler en jetant un oeil aux [sources FPC](<http://www.freepascal.org/cgi-bin/viewcvs.cgi/?root=fpc>). | |
| 59 | 73 | ||
| 60 | 74 | # FCL | |
| 61 | 75 | ||
| 62 | - | ||
| 76 | + | Il n'y pas de norme formelle. | |
| 63 | 77 | ||
| 64 | 78 | # Autres paquets livrés avec FPC | |
| 65 | 79 | ||
| 66 | - | ||
| 80 | + | Il n'y pas de norme formelle. | |
| 67 | 81 | ||
| 68 | 82 | # Lazarus | |
| 69 | 83 | ||
| 70 | - | ||
| 84 | + | Depuis que Lazarus et la LCL suivent la compatibilité avec Delphi, un style de codage similaire à celui de Delphi est utilisé. | |
| 71 | 85 | ||
| 72 | - | ||
| 86 | + | Si vous écrivez un patch ou une extension pour la LCL, vous devriez suivre son style de codage. | |
| 73 | 87 | ||
| 74 | - | ||
| 88 | + | Si vous développez votre propre composant, vous êtes libres d'adopter le style qui vous convient (NdT : vous êtes bien bon Monseigneur), mais il est aussi suggéré d'utiliser le style de la LCL. | |
| 75 | 89 | ||
| 76 | - | ||
| 90 | + | Voir les [[DesignGuidelines/fr|lignes directrices de codage de Lazarus]]. | |
| 77 | 91 | ||
| 78 | - | ||
| 92 | + | Pour référence, vous pouvez trouver la description du style de codage Delphi [ici](<http://edn.embarcadero.com/article/10280#8.2.3>). | |
| 79 | 93 | ||
| 80 | 94 | # Voir aussi | |
| 81 | 95 | ||
| 82 | - | ||
| 96 | + | * [[DesignGuidelines/fr|Lignes directrices de codage pour Lazarus]] | |
| 83 | 97 | ||
| 84 | 98 | --- | |
| 85 | - | ||
| 99 | + | *From the Free Pascal wiki, page "Coding style/fr", as the Internet Archive kept it on 2023-03-30. Copyright stays with the author who wrote it, according to the old wiki's [[Licensing]] page. If you have concerns about this material, [message the admin](/wiki-contact).* |
