Comment améliorer votre lecture et la compréhension du code?
Pour les 5 dernières années, j'ai travaillé avec des projets bien différents et des systèmes. Code pour ces projets diffèrent de manière significative en termes de qualité, de style, de la taille. J'ai vu des exemples à la fois: nettoyer ainsi que dégoûtant 1000 lignes, fonctions et si les conditions le code.
Je continue à ne pas se sentir tout à fait compétente, à la lecture d'autres personnes de code, la compréhension des systèmes internes, etc.
Je voudrais savoir quelles sont les techniques que vous utilisez pour améliorer votre habileté à la lecture et à la compréhension d'autres personnes de code, comment obtenir jusqu'à la vitesse rapidement, quels sont les outils, les méthodes, etc communément employées.
Permettez-moi de donner cette réponse que beaucoup, juste des armes à feu pour elle: vous pouvez améliorer la lecture du code des compétences par lecture de code
Il s'agit d'un poste pour l'amélioration des compétences de programmation qui peut être utile et va de pair avec ce post: Quelle est la chose la plus efficace que vous avez fait pour améliorer vos compétences en programmation?
Vous devez vous connecter pour publier un commentaire.
La chose qui m'a aidé, plus que tout autre, a été refactoring.
Prendre un projet (cela peut être un travail de projet, projet personnel, projet open source, peu importe), et de commencer à refactoring.
Au fil du temps, plus vous refactoriser les autres personnes du même code, le mieux ce sera pour vous "entrer dans leur tête" et de comprendre leur façon de penser, que ce soit bon ou mauvais.
personnellement, je crois en la
"N'importe quel imbécile peut écrire du code que l'ordinateur peut comprendre. Les bons programmeurs d'écrire du code que les humains peuvent comprendre." -Martin Fowler
donc, mon approche serait de trouver cette personne et à coup sur sa tête pour qu'il ne fait pas d'écart ce virus.
Choses qui m'ont aidé, plus que tout autre, a mis à l'essai et refactoring. Vous ne pouvez pas dire: "je comprends ce code" jusqu'à ce que vous savoir comment le casser avec un test.
Ne se contente pas de lire de code open-source, d'en rejoindre un. De cette façon, vous pouvez poser la question "pourquoi était-il écrit de cette façon" ou juste simplement de la lecture. Plus souvent que pas, il y a une raison sous-jacente pour faire quelque chose d'anormal, que ce soit authentique ou non.
Aussi, si vous êtes activement impliqué, vous serez en mesure de voir la progression de la base de code. Vous deviendrez familier avec le style de développement de différentes personnes. Cela peut fournir différentes avenues pour votre cerveau de marcher à travers lorsque vous rencontrez un non-affiliés projet que vous avez besoin de lire.
Autres que la simple expérience à la tête de lecture de code à mieux, je suggère la fixation d'un débogueur à l'application, ajouter des points d'arrêt et d'analyser les données dans le système. De cette façon, vous SAVEZ ce qui se passe, au lieu de présumer (par la logique ou par tout autre moyen) ce qui se passe.
2 choses, en particulier
Refactoriser
Quand vous voyez le code qui murkys les eaux de votre IDE, refactoriser le code de sorte qu'il fait sens, il est donc facile à lire.
Commentaire
L'utilisation de refactoring de compartimenter les "comment", mais utiliser votre commentant à montrer pourquoi.
Tout comme Steve McConnell dit dans le Code Complet 2, suivez les Psuedocode Processus de Programmation (dans ce cas, une fois que le code est écrit). Il vous aidera à vous et à tous les futurs développeurs de lire le code.
", vous pouvez améliorer la lecture du code des compétences en lecture de code"
Correcte.
Quel est le code pour lire?
Tout projet open source qui vous plaît. Plus sur le code source ouvert est remarquablement bonne.
Ne pas lire le code aléatoire si. Lire des trucs que vous se soucient réellement. Le plus vous comprendrez le domaine du problème, le mieux que vous pouvez apprécier la solution que vous êtes en train de lire.
Vous apprendre à nager en piscine, vous apprendre à lire en lisant.
Essayez d'abord de lire de petits fragments de code écrit par d'autres sur votre domaine préféré.
J'ai commencé à le faire par lecture Python codes à code.activestate.com sur mes thèmes favoris(en mathématiques,les algorithmes, etc).
Avantages:
Je suis d'accord avec la lecture de code source ouvert. Il y a un livre par O'reilly sur Beau Code - mais elle le suce à mon avis. Je voudrais suggérer des livres que je dois lire pour se préparer pour la programmation, des entrevues, et qui sont souvent suggérées (tous les liens que j'ai mis en place sur Google Livres liens:
[Programmation Perles] est bonne (obtenir la plus récente version, même si les concepts sont les mêmes),
[La Pratique de la Programmation] est un autre classique.
Ce sont de jolies livres pratiques avec le code réel, à travers des exemples
Aussi, la pratique de l'écriture de code de test pour des projets déjà existants. Cela tend à vous aider en vous amenant à être forcé de comprendre exactement ce que la fonction n'. Si les résultats ne sont pas ce que vous attendiez, vous êtes obligé de penser pourquoi la personne code ne fonctionne pas comme prévu pour ces tests. Navigation autour de StackOverflow et voir ce que les gens avec la réputation élevée ont à dire est toujours utile de trop.