Apprendre à coder correctement Un guide concis pour écrire un meilleur code Par

Apprendre à coder correctement Un guide concis pour écrire un meilleur code Par Robat Williams - vavavoum74 (traducteur) Date de publication : 6 février 2019 Pour réagir au contenu de ce guide, un espace de dialogue vous est proposé sur le forum. Commentez Apprendre à coder correctement par Robat Williams I - Préambule............................................................................................................................................................... 4 II - Contenu..................................................................................................................................................................5 III - Nommer les choses.............................................................................................................................................. 5 IV - Flux de code.........................................................................................................................................................7 IV-A - Général (flux de code).................................................................................................................................7 IV-B - Méthodes (flux de code)..............................................................................................................................7 IV-C - Valeur par défaut.........................................................................................................................................7 IV-D - Contrôles......................................................................................................................................................8 IV-E - Gérer les mauvais raisonnements...............................................................................................................8 V - Structure du code..................................................................................................................................................8 V-A - Lisibilité générale et maintenabilité.............................................................................................................. 8 V-B - Séparation et encapsulation des responsabilités.........................................................................................8 V-C - Ordonnancement.......................................................................................................................................... 9 VI - Programmation générale...................................................................................................................................... 9 VI-A - Écrire, lire et travailler avec du code.......................................................................................................... 9 VI-B - Général (programmation générale)........................................................................................................... 10 VI-C - Objets et classes.......................................................................................................................................10 VI-D - Données et valeurs................................................................................................................................... 10 VI-E - Méthodes (programmation générale)........................................................................................................ 11 VI-F - Logique.......................................................................................................................................................11 VII - Fonctionnel.........................................................................................................................................................11 VIII - La gestion des erreurs..................................................................................................................................... 12 VIII-A - Général (gestion des erreurs)................................................................................................................. 12 VIII-B - Contrôle de flux....................................................................................................................................... 12 VIII-C - Gestion et capture de l'information......................................................................................................... 12 VIII-D - API Web.................................................................................................................................................. 13 VIII-E - Interface utilisateur.................................................................................................................................. 13 IX - Journalisation......................................................................................................................................................13 IX-A - Général (journalisation)..............................................................................................................................13 IX-B - Contenu (journalisation).............................................................................................................................14 IX-C - Niveaux......................................................................................................................................................14 X - Tests.....................................................................................................................................................................15 X-A - Général (tests)............................................................................................................................................15 X-B - Que tester...................................................................................................................................................15 X-C - Structure et isolement................................................................................................................................ 15 X-D - Assertions................................................................................................................................................... 16 X-E - Autre............................................................................................................................................................16 XI - Les fichiers..........................................................................................................................................................16 XII - Mise en forme....................................................................................................................................................17 XIII - Les dépendances............................................................................................................................................. 17 XIV - Spécificités techniques.....................................................................................................................................18 XIV-A - Spécificité techniques : CSS................................................................................................................... 18 XIV-A-1 - Général (CSS)................................................................................................................................ 18 XIV-A-2 - Règles.............................................................................................................................................19 XIV-A-3 - Caractéristiques et techniques....................................................................................................... 19 XIV-A-4 - Isolement.........................................................................................................................................20 XIV-A-5 - Commentaires (CSS)......................................................................................................................20 XIV-B - Spécificités techniques : HTML...............................................................................................................20 XIV-C - Spécificités techniques : Java.................................................................................................................21 XIV-D - Spécificités techniques : JavaScript........................................................................................................21 XV - Commentaires................................................................................................................................................... 22 XVI - Enregistrement de transaction (Commits)........................................................................................................23 XVI-A - Contenu (enregistrements de transaction)..............................................................................................23 XVI-B - Messages................................................................................................................................................ 24 XVI-C - Gestion de versions................................................................................................................................ 24 XVII - Pull request..................................................................................................................................................... 25 XVII-A - Général (pull request)............................................................................................................................ 25 XVII-B - Avant la soumission............................................................................................................................... 25 - 2 - Le contenu de cet article est rédigé par Robat Williams et est mis à disposition selon les termes de la Licence Creative Commons Attribution - Pas d'Utilisation Commerciale - Pas de Modification 3.0 non transposé. Les logos Developpez.com, en-tête, pied de page, css, et look & feel de l'article sont Copyright ® 2018 Developpez.com. http://programmation.developpez.com/tutoriel/apprendre-ecrire-meilleur-code/ Apprendre à coder correctement par Robat Williams XVII-C - Soumission.............................................................................................................................................26 XVII-D - Contrôle et commentaires......................................................................................................................26 XVII-E - Adressage des commentaires................................................................................................................27 XVII-F - Avant de fusionner................................................................................................................................. 27 XVIII - Caractéristiques..............................................................................................................................................28 XIX - Texte de l'interface utilisateur...........................................................................................................................28 XX - Correction de bogues........................................................................................................................................29 XXI - Méta..................................................................................................................................................................29 XXII - Note de la Rédaction de Developpez.com..................................................................................................... 30 - 3 - Le contenu de cet article est rédigé par Robat Williams et est mis à disposition selon les termes de la Licence Creative Commons Attribution - Pas d'Utilisation Commerciale - Pas de Modification 3.0 non transposé. Les logos Developpez.com, en-tête, pied de page, css, et look & feel de l'article sont Copyright ® 2018 Developpez.com. http://programmation.developpez.com/tutoriel/apprendre-ecrire-meilleur-code/ Apprendre à coder correctement par Robat Williams I - Préambule Un guide/une checklist pour aider les utilisateurs à améliorer leur codage et leur contrôle de code. Une grande partie est assez générale, mais reflète mon intérêt pour les applications Web « frontend ». Ndt : il s'agit finalement des éléments du site que l'on voit à l'écran et avec lesquels on peut interagir. Aller au contenu Motivation Par ou commencer lorsque l'on cherche à écrire un meilleur code ? Et comment maintenons-nous la qualité et la cohérence du code lorsque nous travaillons en équipe ? La révision de code est un excellent moyen de procéder, par le biais de retours d'information et de partage des connaissances. Cependant, il s'agit d'une approche réactive, qui a tendance à ne pas être systématique et difficile à faire évoluer. En instaurant et en créant/adaptant une référence partagée pour les méthodes et la qualité, une équipe peut surmonter ces problèmes. Il est rarement pratique pour tout le monde ou pour une personne de contrôler chaque ligne de code, tout en poursuivant son travail et ses responsabilités. En tant que relecteurs, nous avons tous notre propre expérience, nos connaissances techniques/de projet et notre niveau de compétence. Nous pouvons en tirer davantage en les partageant avec les autres plutôt qu'en appliquant les nôtres individuellement. Ceci est un guide personnel, basé sur certaines des choses que je cherche. Tout le monde ne sera pas d'accord avec tout cela, mais je pense que c'est majoritairement raisonnable. J'espère que cela vous aidera à rédiger un meilleur code, à être un contrôleur plus efficace et à susciter votre intérêt dans un apprentissage ultérieur. Contrôle du code Le contrôle du code est plus qu'un processus de contrôle, mais beaucoup de choses que nous recherchons sont simples et il y en a trop à retenir. Les check-lists nous aident à nous souvenir et informent les contributeurs dès le départ des attentes. Cela aide les contrôleurs à avoir plus de temps à consacrer aux choses les plus importantes et les moins simples, et à réduire le temps consacré aux révisions. Ces éléments pouvant être automatisés devraient l'être (à l'aide d'outils tels qu'ESLint et ses plugins, ou checkstyle). Les détections et les corrections manuelles ne sont pas fiables, ne s'adaptent pas bien et consomment de l'attention qui serait mieux dépensée ailleurs. Qu'est-ce que ce n'est pas Ce n'est pas un guide de style, une déclaration de droit chemin, un guide complet ou définitif pour écrire un bon code et être un bon contributeur, ou un raccourci pour devenir un bon développeur. Je ne m'attends pas à ce que tout le monde soit d'accord avec tout cela. Les choses qui devraient être traitées par des outils automatisés configurés de manière appropriée ne sont généralement pas mentionnées. Pour en savoir plus sur le processus de contrôle, la conduite, la collaboration et les outils, consultez la liste impressionnante de contrôle de code. Lectures complémentaires Les livres suivants sur l'écriture de bons codes sont populaires et appréciés. - 4 - Le contenu de cet article est rédigé par Robat Williams et est mis à disposition selon les termes de la Licence Creative Commons Attribution - Pas d'Utilisation Commerciale - Pas de Modification 3.0 non transposé. Les logos Developpez.com, en-tête, pied de page, css, et look & feel de l'article sont Copyright ® 2018 Developpez.com. http://programmation.developpez.com/tutoriel/apprendre-ecrire-meilleur-code/ Apprendre à coder correctement par Robat Williams • 97 Things Every Programmer Should Know (free to read online). • Clean Code. • Code Complete. Licence Voir ici. II - Contenu 1 Nommer les choses. 2 Flux de Code. 3 Structure du code. 4 Programmation générale. 5 Fonctionnel. 6 La gestion des erreurs. 7 Journalisation. 8 Tests. 9 Fichiers. 10 Mise en forme. 11 Les dépendances. 12 Spécificités techniques. 1 CSS. 2 HTML. 3 Java. 4 Javascript. 13 Commentaires. 14 Enregistrements de transaction.de transaction. 15 Pull Request.Request. 16 Caractéristiques. 17 Texte de l'interface utilisateur. 18 Corrections de bogues.bogues.. 19 Méta. III - Nommer les choses Il n'y a que deux choses difficiles en informatique : l'invalidation du cache et nommer les choses - Phil Karlton. Un nom pour chaque chose et chaque nom utilisé pour une seule chose. Utiliser plusieurs mots pour signifier la même chose, ou le même mot pour signifier des choses différentes gaspille de la concentration et risque de créer de la confusion. Cela s'applique non seulement au code, mais à tout ce qui concerne notre travail, par exemple : noms de variables et de classes, noms de méthodes, données, concepts de domaine, dépôts, configuration et autorisations. Utilisez des noms bien connus du monde des domaines commerciaux et techniques. Cela permet d'avoir un vocabulaire commun qui rend la communication plus efficace. Évitez d'utiliser ces noms avec des significations différentes. Utilisez des noms qui ont une signification. La signification est essentielle pour comprendre le code. Les noms génériques tels que « données » ou « valeur » sont trop vagues. - 5 - Le contenu de cet article est rédigé par Robat Williams et est mis à disposition selon les termes de la Licence Creative Commons Attribution - Pas d'Utilisation Commerciale - Pas de Modification 3.0 non transposé. Les logos Developpez.com, en-tête, pied de page, css, et look & feel de l'article sont Copyright ® 2018 Developpez.com. http://programmation.developpez.com/tutoriel/apprendre-ecrire-meilleur-code/ Apprendre à coder correctement par Robat Williams Évitez de laisser des noms pauvres/incohérents s'infiltrer depuis d'autres contextes dans le code. Ces contextes incluent le code hérité, les bibliothèques et les autres applications avec lesquelles nous interagissons. Établissez une limite à l'intérieur de laquelle ces directives de nommage sont respectées et défendez-la de la pollution extérieure. Il est normal que les noms présentés à l'utilisateur soient différents. Les noms affichés sur l'interface utilisateur/ sur la sortie répondent souvent à des exigences et apparaissent dans leur propre contexte. Lorsque ces noms sont médiocres ou inappropriés du point de vue du code, utilisez-en un autre si possible. Utilisez des acronymes et des abréviations avec parcimonie. Le uploads/S4/ apprendre-ecrire-meilleur-code.pdf

  • 21
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager
  • Détails
  • Publié le Nov 08, 2021
  • Catégorie Law / Droit
  • Langue French
  • Taille du fichier 0.3824MB