La programmation fait partie de l’art et de la science. Comment la narration avec votre code s’inscrit-elle dans cette dichotomie?
Une histoire est le récit d’un ensemble d’événements ou de personnes, réels ou imaginaires. Le code est soit un système de mots, de lettres ou de chiffres substitués à d’autres mots, lettres ou chiffres, notamment à des fins de secret ou d’instructions de programmation. Parfois, lors de la lecture de code (informatique), les deux définitions s’appliquent. Dans le discours sur l’inclusivité, tout le monde, tous les humains, devraient pouvoir utiliser les applications ou les produits que nous construisons. Si nous construisons pour tout le monde, pourquoi écrivons-nous du code comme nous voulons que ceux qui ont notre anneau décodeur soient des collaborateurs? Ou nous voulons seulement que l’ordinateur puisse décoder ce que nous avons écrit?

Que nous écrivions un roman, une histoire courte, un article ou un code, notre public est toujours nos semblables. L’ordinateur peut interpréter les instructions que nous utilisions la manière la plus concise d’écrire un algorithme ou si nous utilisons la manière la plus lisible. Parfois, nous nous soucierons de l’optimisation d’une ligne. Nous aurons besoin que la ligne soit plus rapide. Ce qui nous importe toujours, c’est de savoir si nous pouvons ou non comprendre ce que fait la ligne lorsque nous la lisons. Devoir deviner ce que fait une ligne de code alimente le syndrome de l’imposteur avec lequel tant d’entre nous se battent.
Avez vous essayé Messenger Bot? la plateforme de gestion du service clientèle automatique simple à utiliser qui intègre la planification de vos posts sur les réseaux sociaux, commentaires et réponses aux commentaires, envoi planifié des newsletters, messagerie privée, notification SMS, intégration d’un chat messagerie sur votre site web, intégration de votre boutique Woocommerce et pleins de tâches marketing automatisées.
Pour la plupart, nous construisons nos applications avec des langages de programmation de haut niveau. Langages de programmation conçus pour que les humains puissent comprendre et doivent être compilés ou interprétés pour que les ordinateurs les comprennent. Si nous écrivons dans une langue qui sera traduite pour l’ordinateur, pourquoi écrivons-nous encore du code qui nécessite autant de traduction pour les humains?
1-QU’EST CE QUE RACONTER UNE HISTOIRE AVEC VOTRE CODE?
Certaines personnes pensent que la programmation est une science et des mathématiques avec des règles et des formules. D’autres pensent que la programmation est un art. L’ordinateur verra le code en noir et blanc, juste ou faux, activé ou désactivé, deux choix. Les humains liront le code et le liront subjectivement, de la même manière qu’ils lisent un article de presse ou Shakespeare. L’art est subjectif, et parce que nous sommes des critiques, nous avons tendance à stéréotyper l’art comme sans règles alors qu’avec la science, nous voulons être méthodiques, suivre une formule, prouver que quelque chose est «juste». Même alors, la science et l’art ne sont pas si éloignés. L’architecture utilise à la fois les mathématiques et la science, et pourtant, nous appelons les bâtiments beaux. Nous essayons de trouver de nouvelles façons de combiner les règles en de plus belles structures. L’art utilise la science lorsqu’il combine deux couleurs pour créer une nouvelle couleur et a des règles de composition. La programmation est aussi à la fois science et art, et l’écriture de code est encore une forme d’écriture.
2-OU DOIS-JE COMMENCER A RACONTER L’HISTOIRE AVEC LE CODE?
L’histoire commence par l’architecture et la structure des dossiers. Oncle Bob dit que «les bonnes architectures crient à leur utilisation prévue». Une partie de l’architecture est la structure des dossiers et la dénomination de la structure des dossiers. À propos de la dénomination des choses, Oncle Bob déclare que «choisir des noms dans la programmation est aussi important que de nommer vos enfants».
Sur cela, un programmeur doit connaître l’entreprise et avoir une bonne communication avec les parties prenantes. Le groupe doit décider d’une taxonomie. Si la dénomination des choses est basée sur la terminologie de l’entreprise, alors le programmeur peut parler aux parties prenantes et discuter du code avec plus de clarté. N’oubliez pas que changer les noms des éléments dans le code est généralement une opération bon marché. Un bon éditeur de codage fait l’essentiel du travail à votre place. Il n’est pas nécessaire de tout savoir sur l’entreprise dès le premier jour.
En nommant les noms et les verbes de programmation, nous commençons par la taxonomie du domaine ou de l’entreprise. Nous pouvons utiliser un thésaurus pour trouver un meilleur mot pour un mot qui ne semble pas assez spécifique. Nous pouvons remettre en question le même mot utilisé de différentes manières. Cela conduit à une comparaison des principes DRY dans l’écriture d’un roman et dans l’écriture du code.
En écrivant un roman, j’utilise un thésaurus pour faire varier mon choix de mot et voir si je peux trouver un mot plus descriptif quand je me rends compte que j’ai utilisé le mot «marcher» 20 fois et peut-être «marcher» ou «courir» était un meilleur choix . En programmation, DRY signifie que je ne veux pas écrire le même bloc de code plusieurs fois – je ne veux pas avoir à maintenir du code qui fait la même chose plus d’une fois. En programmation, je veux absolument utiliser le même mot pour décrire la même chose à chaque fois. Je veux de la cohérence avec le choix des mots.
3-EXEMPLE D’UNE HISTOIRE AVEC LE CODE
Regardez les deux exemples de code suivants:
1 caractère const = { 2 nom : ‘Latisha’ , 3 en deplacement : vrai , 4 } ; 5 6 const myCharacter = { 7 nom : ‘Latisha’ , 8 déplacer : vrai , 9 } ; |
voir brutcharacter-object.js hébergé avec ❤ par GitHub |
Ce ne sont que quelques déclarations d’objet, un personnage, dans un jeu, dans une histoire, nous ne savons pas. Mais il y a des différences. Le «caractère» général est-il meilleur que «myCharacter»? Je le pense. En fin de compte, ce n’est peut-être pas mon personnage, ce pourrait être simplement un personnage dans un jeu que je construis avec d’autres développeurs. Le préfixe «my» est extra – Grammarly me dit que j’utilise des mots supplémentaires en écrivant tout le temps.
L’autre différence est une déclaration de propriété, l’une est «en déplacement» et l’autre est simplement «déplacer». Le mot supplémentaire fait-il une différence dans la lisibilité, dans l’histoire ici? Le premier me dit que le personnage nommé Latisha bouge. Nous ne savons pas grand chose d’autre, mais nous savons que Latisha déménage. Le second dit simplement « déplacer: vrai ». Cela conduit à plus de questions. Latisha bouge-t-elle, a-t-elle la capacité de bouger? Déplacer est-il un verbe ou un nom dans la propriété? Nous ne savons pas, nous pouvons faire des hypothèses, mais la ligne est ouverte à l’interprétation.
Nous ne savons pas si le personnage a la capacité de se déplacer comme marcher, voler ou courir ou si le personnage devrait en fait être un utilisateur et déménage de maisons ou d’appartements. Combien d’histoires peuvent être inventées avec seulement les exemples ci-dessus? Comment pourrions-nous changer les détails pour permettre au prochain développeur ou lecteur d’avoir plus de contexte dans l’histoire que nous racontons?
Un autre exemple de code fait référence aux objets ci-dessus:
1 if ( character . isMoving ) { 2 3 } 4 5 if ( myCharacter . move ) { 6 7 } |
voir brutcharacter-object-if.js hébergé avec ❤ par GitHub |
Comment se lisent les déclarations ci-dessus?
On demande clairement si le personnage bouge. Nous ne savons toujours pas si le personnage marche ou s’il déménage.
L’autre, demande si mon personnage bouge? C’est une question beaucoup plus ambiguë.
4-COMMENT AMÉLIORER MA CAPACITÉ A RACONTER UNE HISTOIRE AVEC LE CODE?
Un trait important: la bienveillance .
Vous devez vous soucier de votre code et vous devez vous soucier du public qui lira votre code.
Trois éléments pour gagner de l’expérience:
– Lecture
– Rédaction
– Révision / Refactoring
Oncle Bob déclare que le rapport entre la lecture du code et l’écriture du code est de 10: 1. Stephen King déclare que «plus vous lisez, moins vous êtes susceptible de vous ridiculiser avec votre stylo ou votre traitement de texte». Lorsque vous lisez du code, soyez critique. Remarquez le bon et le mauvais. Notez votre première réaction à ce que vous lisez. Faites attention à l’histoire que vous construisez dans votre tête pendant que vous lisez le code.
Vous pouvez lire le code toute la journée, tous les jours. Si vous ne commencez jamais à écrire et à débattre du choix du mot, vous n’aurez jamais l’expérience de l’écriture de code. Peu importe où vous commencez et cela n’a pas besoin d’être parfait du premier coup. Commencez par ce que vous savez. Kent Beck dit: «Faites que ça marche; alors faites-le bien; puis faites vite. » En cela, concentrez-vous sur la lisibilité et la clarté de l’histoire que vous construisez.
Révision et refactoring. Vous devez revoir votre propre code, vous devez refactoriser votre propre code et demander à d’autres personnes de réviser et de refactoriser votre code. Si vous rédigiez un article pour une classe, un article ou un roman, quelqu’un le réviserait ou l’éditerait. Vous pouvez le laisser pendant un certain temps, pendant un mois, pendant 3 mois. Plus le temps passe, moins vous aurez de biais lorsque vous le relirez. Cela ressemblera à une nouvelle histoire et vous aurez plus d’expérience en programmation.
Cet article est apparut pour la première fois sur G2i.
Avez vous essayé Messenger Bot? la plateforme de gestion du service clientèle automatique simple à utiliser qui intègre la planification de vos posts sur les réseaux sociaux, commentaires et réponses aux commentaires, envoi planifié des newsletters, messagerie privée, notification SMS, intégration d’un chat messagerie sur votre site web, intégration de votre boutique Woocommerce et pleins de tâches marketing automatisées.
RECEVEZ NOS CONSEILS GRATUITS ICI