Table des matières
Malentendus sur la lecture du code source
Comprendre le code source
Résumé
Maison interface Web Questions et réponses frontales Comment lire le code source pour les débutants

Comment lire le code source pour les débutants

Sep 17, 2020 pm 05:38 PM
源码

Comment lire le code source pour les débutants

Recommandations d'apprentissage associées : javascript

J'aime programmer, c'est aussi mon métier, et j'en suis très content pour pouvoir passer la plupart de votre temps à développer des logiciels. Comme beaucoup de programmeurs, j'étais à la fois fasciné et confus par la qualité du code que j'avais écrit et par la manière dont je pouvais l'améliorer.

Au fil des années, j'ai lu de nombreux articles et livres sur le développement de logiciels. Il existe de nombreux livres sur l'encre (dans des livres ou en ligne) qui vous expliquent comment améliorer la programmation et devenir un maître en programmation professionnellement formé comme un ninja ! La plupart de ces suggestions ont quelque chose en commun, dont la lecture du code source. Cependant, comparé à d'autres suggestions, la lecture du code source se résume généralement à une phrase simple : trouvez un excellent logiciel open source, ou tout autre logiciel que vous aimez, ouvrez-le (ou imprimez-le) et lisez-le. Bien qu’en général, il s’agisse effectivement d’une bonne suggestion, elle est superficielle sur le papier et pose de nombreux problèmes lorsqu’elle est réellement mise en pratique. Dans cet article, je vais essayer de donner quelques conseils pratiques sur la lecture du code source, mais avant cela, énumérons d'abord les problèmes.

Malentendus sur la lecture du code source

Lorsque les gens parlent de lecture du code source, l'impression générale que cela vous donne est qu'ils sont comme des maîtres en programmation qui peuvent simplement s'asseoir sur une chaise et lire comme un roman . Commencez avec le code. Eh bien, je suis sûr qu'il existe d'excellents programmeurs qui peuvent prendre plaisir à boire du café tout en regardant un tas de symboles mystérieux similaires à des phrases anglaises, et qui peuvent également construire toute la hiérarchie et la structure des classes dans leur esprit. Évidemment, cet article n'est pas pour eux. Son public est constitué de gens comme moi qui pensent que regarder une pile de code source, c'est comme regarder des exercices ennuyeux et dénués de sens. Bien sûr, on pourrait affirmer que l’on peut apprendre d’un projet complet en examinant une seule classe ou une seule fonction petit à petit, mais à mon avis, la plupart des logiciels dépendent en interne les uns des autres, à l’exception des problèmes les plus simples. Il est souvent impossible de comprendre les idées et les principes de conception derrière une fonction ou une classe spécifique sans comprendre le reste du système.

La question suivante est de savoir où obtenir un code source lisible (bien sûr, avant cela, vous devez être capable d'identifier quel code source vaut la peine d'être lu). Il existe de nombreux excellents logiciels, les logiciels open source sont disponibles gratuitement et les logiciels fermés nécessitent une licence. Les référentiels open source incluent Sourceforge et GitHub. Si vous travaillez pour une société de développement de logiciels, vous avez accès au code propriétaire dans le référentiel de code source. Une troisième approche courante consiste à utiliser des programmes qui accompagnent les livres de développement de logiciels ou sont proposés comme ressources pédagogiques (Minix en est un excellent exemple). En effet, la multitude d’options nous rend difficile le choix, donc trouver celle qui nous convient à lire dans le vaste monde du code est une tâche difficile mais essentielle.

Un autre problème est le langage de programmation utilisé dans le programme. Il est déjà assez difficile de lire le code des autres. Si vous devez également vous familiariser avec un nouveau langage mélangé à une syntaxe étrange, le fardeau que cela apportera sera trop lourd. beaucoup pour moi. Cela ressemble à un désastre qui apportera une grande frustration. Vous devez donc trouver du code écrit dans un langage que vous connaissez. Mais si le code que vous consultez provient d’un livre ou est fourni comme ressource pédagogique, peu importe que vous connaissiez la nouvelle langue car il existe des instructeurs qui peuvent expliquer le contexte. Si vous savez qu'il y a des tigres dans les montagnes, mais que vous préférez lire un langage de programmation inconnu sans l'aide d'un livre ou d'un tuteur, alors je suggère que vous deviez au moins l'apprendre et atteindre le point où vous pourrez écrire votre propre programme (Hello World, ça ne compte pas haha).

La question précédente sur le contexte m'amène à ma question suivante, il est beaucoup plus difficile de comprendre ce que fait le code si vous n'êtes pas familier avec le logiciel lui-même. Par exemple, si vous n'utilisez pas Linux tous les jours et connaissez la séquence de démarrage de Linux, il est difficile de déterminer quels sont les niveaux d'exécution après avoir examiné le code Linux. L'expérience et les connaissances acquises grâce à l'utilisation d'un certain logiciel peuvent nous aider à mieux lire son code source, y compris la terminologie couramment utilisée, les fonctions et caractéristiques du logiciel, et même les diverses erreurs que vous rencontrez.

Comprendre le code source

Pour moi, j'ai réalisé que « lire le code source » ne décrit pas avec précision les activités dans lesquelles je suis engagé, et « comprendre le code source » serait plus approprié . Il m'est très difficile de m'asseoir devant l'écran d'un ordinateur portable (ou de l'imprimer sur papier) et de simplement lire un écran rempli de code. J'ai besoin d'autres choses que du code. Par exemple, j'aime parcourir la documentation, jouer avec le logiciel, parcourir le code et même écrire du code de test pour l'exécuter, et je peux alors vraiment l'apprécier. Parce que je vais investir beaucoup de temps et d'énergie là-dedans, je dois être très sélectif et trouver les logiciels que je veux « lire » (comprendre).

Mon premier niveau de filtrage se fait par langage de programmation, pour moi je ne lis que le code des programmes écrits en C#, VB.NET, Python et Javascript (même si je connais aussi C++, Ruby et F#, mais je ne le fais pas) Je ne pense pas avoir le niveau nécessaire pour comprendre le code des autres). Ensuite, je recherche un logiciel que j'ai utilisé et qui me donne l'impression d'être déjà à bord parce que je connais l'intention du code et ce qu'il ne peut pas faire et quelles sont ses limites (si je le connais suffisamment) . Les logiciels open source que j'utilise au quotidien sont un excellent candidat (par exemple, j'utilise les outils open source Cruise Control.NET, NANT et NUnit écrits en C#)

Il arrive que je travaille sur un produit logiciel company (une société Microsoft), donc l'une des sélections de code source que j'ai lues était le code de notre entreprise dans le référentiel de code source. Si vous travaillez également pour un éditeur de logiciels, vous pouvez consulter d'autres projets ou même des versions antérieures du projet sur lequel vous avez travaillé. De cette façon, en plus de mieux comprendre votre code, vous aurez également une bonne idée de ce que vous avez essayé avant et après. Il y a cependant quelques mises en garde à noter :

  • Premièrement, si vous n’avez pas accès à d’autres projets, vous devez demander l’autorisation, car certaines entreprises prennent leur « propriété intellectuelle » très au sérieux.
  • Deuxièmement, la qualité de ces logiciels n'est peut-être pas aussi élevée que vous le pensez, car généralement, le code propriétaire n'a pas fait l'objet d'une analyse pas à pas aussi rigoureuse que le code open source. Il est important de noter que sans révisions régulières du code, la qualité du code peut être médiocre.
  • Troisièmement (celui-ci a été inspiré par les retours de mon ami), si votre entreprise développe des logiciels de gestion (RH, Finance, ERP, etc.), il y a beaucoup de relations commerciales qui doivent d'abord être comprises. . De plus, comme la plupart du code est influencé par des facteurs de fonctionnalité métier, il n'est généralement pas aussi modulaire qu'une application ou une API.

Recherchez des projets bien documentés (cela s'applique aussi bien au code open source qu'au code propriétaire). Ce que je veux dire, c'est qu'une telle documentation doit mettre en évidence la conception globale et expliquer la justification du code. S'il s'agissait simplement d'un document de type Java Doc généré automatiquement, il ne serait pas considéré comme la documentation que je décris :-). Une façon d'y parvenir consiste à utiliser des logiciels créés pour l'éducation (tels que Minix). Étant donné que leur objectif est d'enseigner via un logiciel, ils sont généralement très clairement documentés et contiennent de nombreux documents expliquant les principes de conception derrière le code.

Résumé

Alors, maintenant que vous avez identifié le logiciel dont vous souhaitez lire le code source et téléchargé son code source et sa documentation, lisons-le et comprenons-le étape par étape :

  • Parcourez la documentation de conception et essayez de comprendre comment le code est structuré. Les bons projets logiciels suivent certains modèles architecturaux qui déterminent l'organisation du code. Une fois que vous maîtrisez cela, la compréhension du code devient beaucoup plus facile. Si vous pouvez également dessiner des diagrammes de classes, vous pourrez mieux comprendre la disposition globale.
  • La prochaine chose à faire est de le compiler et de l'exécuter. Selon le projet et sa documentation, cela peut être facile ou difficile.
  • Il est maintenant temps d’ouvrir votre IDE préféré et de commencer à explorer. Un bon point de départ pour l’exploration est d’essayer de parcourir le code d’une fonctionnalité que vous connaissez. De cette façon, vous pouvez parcourir les différentes couches et sous-systèmes et comprendre comment ils sont liés. Par exemple, lorsque j'ai exploré NUnit, j'ai d'abord écrit un scénario de test, puis j'ai examiné les classes impliquées.
  • Essayez d'identifier les modèles de conception utilisés dans votre code. Si vous ne savez toujours pas ce que sont les modèles de conception, arrêtez immédiatement de lire cet article et lisez un livre classique sur les modèles de conception. Familiarisez-vous avec les modèles de conception, ils constituent un excellent moyen d’identifier et de comprendre la conception contenue dans un bon code. Une fois que vous vous y serez familiarisé, il sera plus facile de le garder à l’esprit lorsque vous lirez le code. Cela peut également vous aider à identifier plus facilement les ajustements subtils et les changements magiques apportés par l'auteur du code au modèle de conception d'origine.
  • Essayez d'écrire des cas de test pour votre code afin de bien le comprendre, c'est un moyen très utile de comprendre les dépendances entre les différentes parties de votre code. Avant d'écrire des cas de test, vous devez d'abord répondre à toutes les dépendances. Ensuite, découvrez les points d'entrée possibles et les valeurs de retour de votre code. Cela peut améliorer votre compréhension du code et vous aider à passer au niveau suivant.
  • Enfin, essayez de refactoriser votre code. À ce stade, vous êtes passé de la simple compréhension du code à celui de suffisamment familier pour pouvoir le modifier. À mesure que la complexité de la refactorisation augmente, votre compréhension augmentera également. À ce stade, vous pouvez contribuer votre propre code au projet si vous le souhaitez.

À mon avis, la « lecture du code source » est plus qu'une simple lecture, c'est un ensemble unique d'activités qui fonctionnent ensemble pour aider les gens à comprendre le code. Cela peut sembler plus intimidant que simplement « lire du code », mais cela en vaut la peine.

Maintenant, pouvez-vous « lire le code source » plus facilement et plus joyeusement ?

Si vous souhaitez en savoir plus sur la programmation, faites attention à la rubrique Formation php !

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

La pratique d'application de Python dans la protection du code source des logiciels La pratique d'application de Python dans la protection du code source des logiciels Jun 29, 2023 am 11:20 AM

En tant que langage de programmation de haut niveau, le langage Python est facile à apprendre, à lire et à écrire et a été largement utilisé dans le domaine du développement de logiciels. Cependant, en raison de la nature open source de Python, le code source est facilement accessible aux autres, ce qui pose certains défis en matière de protection du code source des logiciels. Par conséquent, dans les applications pratiques, nous devons souvent adopter certaines méthodes pour protéger le code source Python et assurer sa sécurité. Dans le domaine de la protection du code source des logiciels, il existe une variété de pratiques d'application parmi lesquelles Python peut choisir. Voici quelques exemples courants

Comment afficher le code source du code PHP dans le navigateur sans être interprété et exécuté ? Comment afficher le code source du code PHP dans le navigateur sans être interprété et exécuté ? Mar 11, 2024 am 10:54 AM

Comment afficher le code source du code PHP dans le navigateur sans être interprété et exécuté ? PHP est un langage de script côté serveur couramment utilisé pour développer des pages Web dynamiques. Lorsqu'un fichier PHP est demandé sur le serveur, le serveur interprète et exécute le code PHP qu'il contient et envoie le contenu HTML final au navigateur pour affichage. Cependant, nous souhaitons parfois afficher le code source du fichier PHP directement dans le navigateur au lieu de l'exécuter. Cet article expliquera comment afficher le code source du code PHP dans le navigateur sans être interprété et exécuté. En PHP, vous pouvez utiliser

Site Web pour consulter le code source en ligne Site Web pour consulter le code source en ligne Jan 10, 2024 pm 03:31 PM

Vous pouvez utiliser les outils de développement du navigateur pour afficher le code source du site Web. Dans le navigateur Google Chrome : 1. Ouvrez le navigateur Chrome et visitez le site Web sur lequel vous souhaitez afficher le code source. 2. Cliquez avec le bouton droit n'importe où sur le Web ; page et sélectionnez « Inspecter » ou appuyez sur la touche de raccourci Ctrl + Maj + I pour ouvrir les outils de développement ; 3. Dans la barre de menu supérieure des outils de développement, sélectionnez l'onglet « Éléments » 4. Regardez simplement le code HTML et CSS ; du site Internet.

Comment afficher le code source de Tomcat dans Idea Comment afficher le code source de Tomcat dans Idea Jan 25, 2024 pm 02:01 PM

Étapes pour afficher le code source de Tomcat dans IDEA : 1. Téléchargez le code source de Tomcat ; 2. Importez le code source de Tomcat dans IDEA ; 3. Visualisez le code source de Tomcat ; 4. Comprendre le principe de fonctionnement de Tomcat ; mise à jour ; 7. Utiliser des outils et des plug-ins ; 8. Participer à la communauté et contribuer. Introduction détaillée : 1. Téléchargez le code source de Tomcat Vous pouvez télécharger le package de code source depuis le site officiel d'Apache Tomcat. Généralement, ces packages de code source sont au format ZIP ou TAR, etc.

Vue peut-elle afficher le code source ? Vue peut-elle afficher le code source ? Jan 05, 2023 pm 03:17 PM

Vue peut afficher le code source. La méthode de visualisation du code source dans Vue est la suivante : 1. Obtenez vue via "git clone https://github.com/vuejs/vue.git" 2. Installez les dépendances via "npm i" ; ; 3. Via " npm i -g rollup" pour installer le rollup ; 4. Modifiez le script de développement 5. Débogez le code source.

Un guide complet pour apprendre et appliquer le code source du framework Golang Un guide complet pour apprendre et appliquer le code source du framework Golang Jun 01, 2024 pm 10:31 PM

En comprenant le code source du framework Golang, les développeurs peuvent maîtriser l'essence du langage et étendre les fonctions du framework. Tout d’abord, récupérez le code source et familiarisez-vous avec sa structure de répertoires. Deuxièmement, lisez le code, suivez le flux d'exécution et comprenez les dépendances. Des exemples pratiques montrent comment appliquer ces connaissances : créer un middleware personnalisé et étendre le système de routage. Les meilleures pratiques incluent l’apprentissage étape par étape, l’évitement du copier-coller inconsidéré, l’utilisation d’outils et la référence aux ressources en ligne.

Erreur de code source PHP : résolution du problème d'erreur d'index Erreur de code source PHP : résolution du problème d'erreur d'index Mar 10, 2024 am 11:12 AM

Erreur de code source PHP : pour résoudre le problème d'erreur d'index, des exemples de code spécifiques sont nécessaires. Avec le développement rapide d'Internet, les développeurs rencontrent souvent divers problèmes lors de l'écriture de sites Web et d'applications. Parmi eux, PHP est un langage de script côté serveur populaire, et ses erreurs de code source sont l'un des problèmes que les développeurs rencontrent souvent. Parfois, lorsque nous essayons d'ouvrir la page d'index d'un site Web, divers messages d'erreur apparaissent, tels que "InternalServerError", "Unde

Analyse et optimisation du code source du framework Golang Analyse et optimisation du code source du framework Golang Jun 02, 2024 pm 04:54 PM

Cet article explore l'analyse du code source et l'optimisation du framework Go. La structure du code source comprend quatre packages principaux, impliquant la logique du cadre de base, le contexte de la demande, la liaison de données et le rendu des réponses. Les techniques d'optimisation comprennent : 1. Utiliser des arbres de routage pour optimiser le traitement des itinéraires afin d'augmenter considérablement la vitesse de recherche d'itinéraire. 2. Utilisez un middleware pour la mise en cache et la compression afin de réduire la charge du serveur et le temps de réponse. 3. Évitez d'effectuer des opérations fastidieuses lors des rappels pour maintenir une réactivité élevée. 4. Activez la journalisation et analysez les requêtes lentes pour identifier les goulots d'étranglement des performances. 5. Mettez régulièrement à jour les versions du framework pour profiter des dernières améliorations de performances.

See all articles