Maison >Périphériques technologiques >Industrie informatique >Comment travaillez-vous avec le code d'autres personnes?
Traiter le code créé par d'autres personnes est une compétence fondamentale pour un développeur. Donnez-lui un an et le code des autres pourrait même être le vôtre.
Aujourd'hui, je vais examiner certaines des meilleures approches pour savoir comment gérer le code des autres, lire efficacement Legacy Code. Ce n'est pas un sujet facile à couvrir.
Pour faciliter le processus, je cadais mon approche dans les domaines suivants:
Qui sont les développeurs principaux? Où sont-ils? Sont-ils disponibles directement dans votre bureau? Si oui, allez parler avec eux ou envoyer un e-mail. Ces personnes devraient être les meilleures sources de connaissances sur un projet.
Êtes-vous un travailleur distant ou un pigiste? Quels canaux de communication ont le projet ou l'entreprise? Les développeurs sont-ils sur IRC, Slack, Twitter, Email, Trello ou autre chose?
Assurez-vous que vous êtes là où ils sont. Une critique souvent nivelée à Zend Framework 2 est qu'il n'y a pas de communauté active. Ce n'est pas le cas, car le canal IRC est actif quotidiennement. Assurez-vous donc que vous êtes là où se trouvent les développeurs et autres membres de l'équipe.
Lorsque vous commencez pour la première fois sur un projet, prenez-vous en douceur. Ne vous attendez pas à tout savoir dès le début. Les estimations varient, mais j'ai entendu parler de trois semaines à trois mois de travail quotidien avec des bases de code avant qu'un développeur ne puisse être vraiment considéré comme productif avec cette base de code.
Certaines personnes ont la perception erronée que vous pouvez, en quelque sorte, sauter et être instantanément productif. Peut-être ont-ils regardé trop de films hollywoodiens comme l'espadon.
Les bases de code prennent le temps d'apprendre car ils sont investis des idées , préconçues , croyances et approches de tous les développeurs qui a travaillé sur le projet. Étant donné que vous êtes nouveau, vous n'aurez aucune connaissance de base.
Voici 5 bonnes façons de commencer:
Ne soyez pas dur avec vous-même, donnez-vous une chance de prendre un bon départ. Après un certain temps, vous commencerez à mieux comprendre comment l'application a été assemblée.
À ce stade, commencez à vous déplacer plus rapidement en posant des questions à d'autres développeurs et développeurs seniors. Vous auriez construit une liste de questions lorsque vous avez parcouru la base de code.
Prenez le temps de demander aux autres développeurs des réponses à vos questions et requêtes. Ne soyez pas timide, sautez et obtenez les réponses et les commentaires dont vous avez besoin.
Toute bonne base de code devrait subir des tests. Si ce n'est pas le cas, ce n'est pas un bon signe. Il n'a pas besoin d'être insidieux - ce pourrait être un développeur ou une équipe de développement qui n'avait jamais mis en œuvre des tests - mais je serais plus qu'un peu inquiet s'il n'y en avait pas.
S'il y a des tests, exécutez-les. Passent-ils? J'ai rencontré plus d'une base de code source qui a une suite de tests que personne ne semblait pouvoir réellement exécuter. Ont-ils été tenus à jour?
Maintenant, vous avez essayé de les exécuter, de les lire. S'ils sont bien écrits, ils devraient décrire le fonctionnement de l'application, ce que cela devrait faire et comment différents composants se contentent. Assurez-vous de prendre le temps de le faire, car cela peut être assez perspicace.
Une autre façon facile de commencer est la correction des bogues ciblés sur les nouveaux arrivants, ou plus de développeurs juniors, sur le projet. Deux bons exemples sont Joind.in et Owncloud, le tracker de bogues pour ce dernier que vous pouvez voir dans la capture d'écran ci-dessous.
Vous pouvez voir que ces billets ont été clairement marqués. Ayez une lecture et impliquez-vous. Ces bogues ne seront pas très techniques, mais vous pourrez vous faciliter le projet, renforcer votre confiance et vos connaissances.
Bien que la gloire et la complexité technique puissent être excellentes pour l'ego, lorsque les choses ne fonctionnent pas ou ne prennent pas trop de temps, elles ne font aucune faveur pour votre fierté et votre enthousiasme. Commencez petit et facilitez votre chemin.
L'une des meilleures choses que vous puissiez faire lorsque vous reprenez une base de code, ou lors de votre arrivée dans une équipe existante, est de rassembler autant de ressources que vous le pouvez. Vous ne savez pas quoi rechercher? Voici quelques idées pour vous aider à démarrer:
Les bons ides valent leur poids proverbial en or. Que vous soyez un ruby , python , Go , java , php ou un autre développeur de langue, trouver Un bon IDE spécifiquement dédié ou approprié pour votre langue de choix.
J'apprécie que certaines personnes sont des puristes, préférant Vim ou Emacs, et ça va. Mais je suis un amoureux des IDE et mon IDE de choix est Phpstorm. Il y en a beaucoup d'autres, comme Eclipse, Textmate, SublimeText et VisualStudio.
Une fois que vous avez trouvé l'IDE pour vous, commencez à utiliser les fonctionnalités qu'il propose. Je ferai référence à phpstorm spécifiquement ici, mais appliquerai ces principes à votre ide de choix.
Commencez à parcourir le code et voyez s'il est conforme à une norme. Cela ne doit pas être une norme formelle, comme les PSR PHP. Mais les développeurs ont suivi un style cohérent, ou est-ce partout. Utilisez des outils tels qu'un détecteur de désordre et un testeur de complexité cyclomatique pour commencer à évaluer la qualité du code.
y a-t-il une documentation de code? Si c'est le cas, votre IDE devrait être en mesure de l'utiliser lorsque vous inspectez le code. Ensuite, utilisez un débogueur étape par étape, tel que XHProf, XDebug ou Zend Debugger, et exécutez l'application, en voyant comment cela fonctionne.
Que fait-il? Quelles structures de données créent-elles et utilisent-elles? Répétient-il le code bloque-t-il inutilement? Il y a bien plus que ce que je peux couvrir ici, mais utilisez les fonctionnalités de votre IDE pendant que vous passez par le code pour vous faciliter la vie.
Celui-ci est personnellement pour moi. Plus nous apprenons, plus nous pouvons grandir et - par conséquent - le faire. Nous ne sommes pas les premiers à avoir parcouru le chemin sur lequel nous survions. Beaucoup, beaucoup, d'autres nous ont été devant nous et ont fait beaucoup des mêmes erreurs que nous avons susceptibles de commettre.
Économisez un peu de temps et rendez justice à leurs expériences durement apprises en apprenant d'eux. De nombreux meilleurs développeurs sont également des auteurs et des blogueurs.
L'un de mes favoris personnels est Martin Fowler, qui a également publié un excellent livre sur le thème de la refactorisation. Il existe également d'autres excellents livres, tels que des modèles de conception, et des sites Web tels que Sourcemaking.com.
Faites-vous une faveur et continuez d'investir dans des ressources comme celles-ci. Ce n'est pas toujours facile, mais cela peut être extrêmement gratifiant.
C'est celui dont je ne fais pas assez. Il est facile d'être un critique de fauteuil, assis sur la touche et de critiquer une base de code, un cadre ou un autre type de projet logiciel. Au lieu de le faire, entrez et participez-vous.
La documentation ne concerne pas les programmeurs, des concepteurs ou des personnes non techniques. Certains des plus grands projets suggèrent activement que le meilleur endroit pour commencer est la documentation.
L'un des projets les plus importants qui le fait est le noyau Linux. Quelle meilleure façon d'apprendre quelque chose que de le documenter? Après tout, si vous le savez vraiment, seulement vous pouvez le documenter.
Donc, s'il s'agit d'un projet open source, entrez, découvrez-le, lisez le code, prenez des notes au fur et à mesure, puis contribuez à la documentation. S'il s'agit d'une application interne, soyez le premier à commencer à documenter; Même si pour personne d'autre que vous-même.
peut-être qu'il n'y a pas de documentation à parler; Un endroit vraiment horrible. Mais chaque projet doit commencer quelque part. Lorsque vous travaillez sur le code source, notez ce que vous savez.
Certains des meilleurs développeurs que je connaisse, par exemple la charmante Lorna Jane, ont commencé à bloguer de cette façon. Elle a blogué pour garder une trace de ce qu'elle apprenait, qui s'est ensuite tournée vers l'un des blogs PHP les plus populaires.
Le dernier point: soyez prévenant pour les développeurs dont vous passez le travail et vous construisez. Vous ne savez pas où ils se trouvaient dans leur carrière et leur éducation, ni quelles restrictions ils ont eu sur eux, quand ils ont écrit le code sur lequel vous êtes maintenant à la vitesse.
Quoi de plus, à quel niveau de compétence êtes-vous? Il peut être facile pour nous, lorsque nous sommes plus jeunes, plus récents et moins expérimentés, de porter un critique des autres.
Nous pensons que nous savons tout et que nos attentes, concepts et approches sont les moyens de procéder. Mais est-ce vraiment le cas? J'aime croire que, à mesure que nous mûrissons et que nous grandissons un peu plus, nous grandissons également plus sages et devenons plus en acceptant le large éventail d'approches du développement de logiciels qui existent.
Nous n'avons peut-être pas besoin d'être d'accord avec eux, mais ils ne sont pas nécessairement faux. Ils peuvent avoir beaucoup à nous apprendre, ce qui peut nous aider à grandir. Alors essayez toujours d'être prévenant des autres et de la position dans laquelle ils se trouvaient. Ne soyez pas le nouveau venu désagréable, pointant le doigt et blâmez. Après tout, cela aide personne, surtout vous.
Il y a des charges plus que vous pouvez faire pour faire du travail avec le code d'autres personnes un processus plus gérable. Quelles méthodes, conseils, astuces et outils utilisez-vous?
Comprendre le code de quelqu'un d'autre peut être une tâche intimidante, surtout si le code est complexe ou mal documenté. Cependant, vous pouvez utiliser plusieurs stratégies pour faciliter le processus. Tout d'abord, essayez d'obtenir une compréhension de haut niveau du code en lisant toute documentation ou commentaire disponible. Ensuite, décomposez le code en sections plus petites et gérables et essayez de comprendre chaque section individuellement. L'utilisation d'un débogueur peut également être utile, car elle vous permet de parcourir le code et de voir comment il se comporte. Enfin, n'hésitez pas à demander de l'aide à l'auteur d'origine ou à d'autres membres de l'équipe si vous êtes coincé.
Pric est une technique où deux programmeurs travaillent ensemble sur un poste de travail. L'un, le pilote, écrit le code tandis que l'autre, l'observateur ou le navigateur, passe en revue chaque ligne de code lorsqu'elle est tapée. Les deux programmeurs changent fréquemment de rôles. Cette approche favorise une meilleure compréhension du code, car les deux programmeurs peuvent discuter et clarifier tout doute ou problème en temps réel. Cela aide également à attraper les erreurs tôt, car l'observateur peut repérer les erreurs que le conducteur aurait pu manquer.
Organisation du code Une manière claire et logique peut grandement aider les autres à le comprendre. Certaines stratégies d'organisation du code incluent le regroupement des fonctions connexes, en utilisant des noms significatifs pour les variables et les fonctions, et en fournissant des commentaires pour expliquer les sections complexes de code. Il est également important de suivre les conventions et normes de codage établies, car ils fournissent une structure cohérente qui rend le code plus facile à lire et à comprendre.
Un réviseur de code est responsable de l'examen du code écrit par d'autres membres de l'équipe pour s'assurer qu'il répond aux normes de qualité de l'équipe. Cela comprend la vérification des erreurs, la garantie que le code suit les conventions de codage établies et la vérification qu'elle atteint ses fonctionnalités prévues. Le réviseur de code fournit également des commentaires à l'auteur d'origine, qui peuvent les aider à améliorer leurs compétences de codage.
Travailler avec le code d'autres personnes est une compétence qui peut être améliorée avec la pratique. Commencez par lire et comprendre le code écrit par d'autres et essayez d'identifier les techniques et les stratégies qu'ils ont utilisées. Participez à des avis de code et aux séances de programmation des paires, car celles-ci offrent des opportunités d'apprendre des autres et d'acquérir différentes perspectives. De plus, l'étude des normes de codage et des meilleures pratiques peut également aider à améliorer vos compétences.
Il existe plusieurs outils qui peuvent vous aider à comprendre et à travailler avec le code des autres. Les environnements de développement intégrés (IDE) ont souvent des fonctionnalités qui peuvent vous aider à naviguer dans le code et à comprendre sa structure. Les débuggeurs vous permettent de parcourir le code et de voir comment il se comporte. Les outils d'examen de code peuvent vous aider à identifier les problèmes et à fournir des commentaires. De plus, les outils de documentation peuvent vous aider à comprendre l'objectif et les fonctionnalités du code.
Le traitement d'un code mal documenté peut être difficile, mais il y a des stratégies que vous peut utiliser. Commencez par essayer de comprendre la structure et la fonctionnalité globales du code. Utilisez un débogueur pour parcourir le code et voir comment il se comporte. Si possible, demandez à l'auteur d'origine ou à d'autres membres de l'équipe des éclaircissements. Lorsque vous vous comprenez, envisagez d'ajouter vos propres commentaires ou documents pour aider les futurs développeurs.
Lorsque vous contribuez à une base de code, c'est important pour respecter le code existant et les conventions de codage. Commencez par comprendre la base de code et sa structure. Assurez-vous que vos modifications s'alignent sur le code existant et ne perturbez pas ses fonctionnalités. Testez vos modifications approfondies pour vous assurer qu'elles n'introduisent pas de nouveaux bugs. Enfin, communiquez avec votre équipe et participez aux avis de code pour vous assurer que vos modifications sont comprises et acceptées.
Les normes de codage sont importantes dans une équipe dans une équipe car ils garantissent la cohérence et la lisibilité à la base de code. Ils définissent comment le code doit être écrit et organisé, ce qui permet aux membres de l'équipe de comprendre et de travailler avec le code de l'autre. Les normes de codage aident également à maintenir la qualité du code, car elles incluent souvent des directives pour la gestion des erreurs, la sécurité et les performances.
Effective La communication est essentielle lorsque vous travaillez avec une équipe sur une base de code. Soyez clair et concis lorsque vous discutez du code et utilisez une terminologie technique appropriée. Participer aux revues de code et fournir des commentaires constructifs. Si vous avez du mal à comprendre un morceau de code, n'hésitez pas à demander des éclaircissements. Soyez également ouvert à recevoir des commentaires et à l'utiliser pour améliorer vos compétences de codage.
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!