Bonjour à tous dans la communauté CodeGym ! 10 façons d'améliorer votre code, éprouvées par l'expérience personnelle - 1Aujourd'hui, nous allons parler de la qualité du code. Oui, chers amis. Personne n'est parfait. Tout le monde se rend compte à un moment donné que le code pourrait être meilleur... Mais que faire dans cette situation ? Au minimum, commencez à faire des recherches sur ce problème. Mais vous êtes déjà là, ce qui veut dire que le sujet doit vous intéresser, alors allons-y. Aujourd'hui, nous allons décrire comment vous pouvez rendre votre code meilleur et plus propre. Vous n'aurez donc plus honte de votre code actuel à l'avenir ! :) Toutes ces méthodes aideront un programmeur à devenir un bon programmeur.10 façons d'améliorer votre code, éprouvées par l'expérience personnelle - 2

1. Si vous voulez améliorer votre code, lisez celui de quelqu'un d'autre

Si vous souhaitez améliorer considérablement vos compétences en programmation, vous devez... lire le code écrit par d'autres programmeurs. Croyez-moi ou non. Mais si vous prenez le risque, promis : vous serez récompensé du temps passé. Par exemple, ne lisez pas sur medium.com le fonctionnement de HashMap, ArrayList, LinkedList, etc. Au lieu de cela, lisez leur code source et découvrez-le vous-même. Voici une liste de cours à lire :
  • Les questions les plus fréquemment posées lors des entretiens concernent HashMap. Vous pouvez faire d'une pierre deux coups : vous comprendrez le code et acquerrez les connaissances dont vous avez besoin.
  • La même chose est vraie pour ArrayList. Il n'y a rien de compliqué, mais le code source vaut vraiment la peine d'être lu et compris.
  • String est un excellent exemple. Comprenez pourquoi il est immuable.
  • AtomicInteger est une classe sympa : elle définit les opérations atomiques sur les objets Integer.
  • Après ça, eh bien, on pourrait lister toutes les classes, les unes après les autres :)
Plus sérieusement, vous devriez lire le code de Pivotal. Les gens là-bas ont écrit l'écosystème le plus demandé du monde Java. Leur code vaut vraiment la peine d'être lu. Je vous recommande de commencer avec Spring Core . Lire un code source inconnu est un travail difficile mais gratifiant. :)

2. Suivez les conventions du code

10 façons d'améliorer votre code, éprouvées par l'expérience personnelle - 3Les conventions de codage sont un ensemble de directives créées par les équipes de développement. Ils incluent des directives pour le style et les techniques de codage pour chaque aspect du code. Ces conventions peuvent être rédigées pour l'ensemble de l'entreprise ou pour un projet spécifique. Les conventions de codage sont généralement spécifiques à chaque langage de programmation et couvrent l'organisation des fichiers, l'indentation, les commentaires, les déclarations, les opérateurs, les espaces, les conventions de nommage, les techniques et principes de programmation, les règles de programmation, les meilleures pratiques d'architecture, etc. Le principal avantage de certaines normes est le fait que le code se ressemble et est écrit dans le même style. Cela le rend plus lisible et aide les programmeurs à comprendre le code écrit par un autre programmeur. Si les normes de codage sont suivies et appliquées de manière cohérente tout au long du processus de développement, il sera plus facile à l'avenir de maintenir et d'étendre votre code, de le refactoriser et de résoudre les conflits d'intégration. Les conventions de codage sont importantes pour les programmeurs pour plusieurs raisons :
  • 40 à 80% du coût d'un logiciel va à sa maintenance,
  • Pratiquement aucun logiciel n'est maintenu par son auteur tout au long de sa vie,
  • Les conventions de codage améliorent la lisibilité du code source en permettant aux programmeurs de comprendre plus rapidement le nouveau code.
Pour être honnête, je suis un grand fan des normes de codage. Pour moi, il est logique de passer du temps à en discuter et à en discuter, car il s'agit d'une activité précieuse qui vous fera économiser du temps et des efforts à l'avenir. Les conventions du code doivent être révisées fréquemment. Les règles peuvent être modifiées de "obligatoires" à "facultatives" et vice versa. Si certains d'entre eux ne fonctionnent pas comme prévu, ils doivent être révisés ou supprimés des lignes directrices.

3. Utilisez les revues de code

Une revue de code est l'un des outils les plus puissants pour l'amélioration du code. 10 façons d'améliorer votre code, éprouvées par l'expérience personnelle - 4Pourquoi? Parce que le code sera examiné par les experts qui ne l'ont pas écrit. Et un regard neuf est très utile. Et une revue de code est souvent ce qui permet d'éviter d'écrire un code carrément terrible. Je sais que les révisions de code ne sont pas toujours possibles, car vous devez trouver une autre personne qui est prête à en faire une. Mais cela ne signifie pas que vous devez ignorer l'utilisation de cet outil. Bien au contraire : les révisions de code sont une raison de trouver des personnes partageant les mêmes idées qui ont également besoin d'améliorer la qualité de leur code. Au fait, qui vous empêchera de les trouver ici sur CodeGym ? Dans un endroit où tout le monde veut être programmeur.

4. Écrire des tests unitaires

Ma technique préférée pour améliorer le code est sans aucun doute l'écriture de tests unitaires. Plus vous en écrivez, mieux c'est. En programmation informatique, les tests unitaires sont un processus de développement logiciel dans lequel le plus petit morceau de code source testable, appelé une unité, est testé individuellement et indépendamment pour voir s'il fonctionne comme prévu. Cela vous aidera à découvrir les défaillances de vos algorithmes et/ou de votre logique avant de publier votre code. Étant donné que les tests unitaires nécessitent que votre code soit structuré de manière appropriée, le code doit être divisé en fonctions plus petites et plus ciblées. Chacun est responsable d'une seule opération sur un ensemble de données, plutôt que de grandes fonctions qui effectuent plusieurs opérations différentes (le principe de responsabilité uniqueDit "Bonjour...). Le deuxième avantage d'écrire du code bien testé est que vous pouvez éviter de casser le code lorsque vous apportez de petites modifications aux fonctionnalités existantes. Lorsque les tests unitaires échouent, ils vous diront que quelque chose a été mal écrit. À première vue, le temps de développement passé à écrire des tests unitaires ressemble à un surcoût. Cependant, les tests unitaires permettront de gagner du temps sur le débogage à l'avenir. Cela devrait être un processus étape par étape. Alors allons plus loin avec le sourire — nous écrirons des tests pour chaque méthode et classe :D

5. Utilisez des outils pour améliorer la qualité du code

Il n'y a pas de développeur qui n'a jamais fait d'erreur. En règle générale, le compilateur détecte les problèmes de syntaxe et d'arithmétique et affiche la trace de la pile. Mais certains problèmes peuvent encore surgir que le compilateur ne détecte pas. Par exemple, des exigences mal mises en œuvre, des algorithmes incorrects, un code mal structuré ou tout autre problème potentiel que la communauté connaît par expérience. La seule façon d'attraper des erreurs comme celle-ci est de demander à un développeur plus expérimenté de revoir votre code, n'est-ce pas ? Mais cette approche n'est pas une panacée et ne changera pas grand-chose. Pour chaque nouveau développeur dans l'équipe, vous devriez avoir une paire d'yeux supplémentaire qui regarde son code. Heureusement, il existe de nombreux outils qui peuvent vous aider à contrôler la qualité de votre code. J'ai utilisé Checkstyle, PMD, FindBugs et SonarQube dans mon travail sur divers projets. Et il y en a d'autres aussi. Ils sont tous généralement utilisés pour analyser la qualité du code et générer des rapports utiles. Très souvent, ces rapports sont publiés par des serveurs d'intégration continue tels que Jenkins.

6. Écrivez un code simple et direct

10 façons d'améliorer votre code, éprouvées par l'expérience personnelle - 5Écrivez toujours un code simple, compréhensible et logique. Les gens ont tendance à écrire du code compliqué afin de prouver qu'ils peuvent le faire. Un code simple et logique fonctionne toujours bien, entraîne moins de problèmes et est plus extensible. Un bon code est la meilleure documentation. Si vous pensez ajouter un commentaire, demandez-vous : "Comment puis-je améliorer le code pour que ce commentaire ne soit pas nécessaire ?" —Steve McConnell.

7. Lisez la documentation

10 façons d'améliorer votre code, éprouvées par l'expérience personnelle - 6L'une des habitudes les plus importantes des bons programmeurs est de lire beaucoup de documentation. Qu'il s'agisse de spécifications, de JSR, de documentations d'API, de didacticiels ou d'autre chose, la lecture de la documentation vous aide à construire une base solide pour votre meilleure programmation. Enfin et surtout, ne vous comparez pas aux autres. Se comparer aux autres ne mènera qu'à des sentiments négatifs et à une concurrence malsaine. Chaque personne a ses propres forces et faiblesses. Cela signifie qu'il est important de les connaître et de travailler avec eux. Faites l'inventaire de vous-même - listez vos forces et travaillez dessus. La programmation est un vrai plaisir : profitez-en.

"La constante d'un homme est la variable d'un autre homme."

Alan J. Perlis

8. Suivez des blogueurs intéressants

Des milliers de passionnés à travers le monde travaillent avec et écrivent sur les mêmes technologies. Les blogs sont souvent écrits par les programmeurs eux-mêmes, et la plupart d'entre eux partagent des opinions et des expériences personnelles. Grâce aux blogs, vous pouvez voir différentes perspectives sur la même technologie. Vous pouvez voir les bonnes et les mauvaises technologies sur les blogs. Au minimum, lisez les articles sur le Coding Dojo Blog et CodeGym :) Suivez les bons blogs et commentez les posts, partagez votre avis.

9. Lisez des livres sur la profession

Rien ne peut remplacer un bon livre. Un bon livre enseigne les concepts de base sous une forme beaucoup plus simple et s'applique aux choses du monde réel. Leurs auteurs sont eux-mêmes de grands programmeurs. En lisant des livres, vous pouvez apprendre de l'expérience de quelqu'un d'autre. Je vous conseille de lire « Effective Java » de Joshua Bloch. Ce livre présente soixante-dix-huit règles empiriques indispensables pour les programmeurs : les meilleures solutions de travail pour les problèmes de programmation auxquels vous êtes confrontés tous les jours. Il contient les directives les plus pratiques et faisant autorité pour écrire des programmes efficaces et bien conçus. Si vous débutez avec Java et que vous n'avez aucune expérience en programmation, vous pouvez lire "Sams Teach Yourself Java 2 in 24 Hours". Et pour écrire du code propre, il existe un excellent livre, "Clean Code", de Robert Martin. Après l'avoir lu,

10. Codage ! Code! Code!

Vous ne pouvez pas devenir un bon programmeur simplement en mémorisant un livre. Il est facile de parler de concepts théoriques. Mais vous ne pouvez apprendre les limites d'un langage ou élaborer les meilleures pratiques que lorsque vous écrivez du code. Par conséquent, pour devenir un bon programmeur, vous devez écrire beaucoup de code. Si vous êtes débutant, commencez par écrire des programmes pour des tâches simples comme la série de Fibonacci, les palindromes, le triangle de Pascal, etc. Passez ensuite à des tâches plus vastes comme un arbre de recherche binaire, etc. Si vous cherchez une plateforme en ligne pour pratiquer Java programmes, consultez Coding Ground . Progressez dans les cours de programmation et je vous garantis que vos compétences seront bien meilleures. Une autre option consiste à suivre le cours Harvard CS50, qui est gratuit.

Résumons

La personne qui ne fait aucune erreur est celle qui ne fait rien. C'est pourquoi nous mobilisons notre patience et, comme une sauterelle travailleuse, nous affinons nos compétences en codage. Pour ce faire, n'oubliez pas :
  • Lire le code des autres
  • Fournir et demander des revues de code
  • Ecrire des tests unitaires
  • Utiliser des outils pour améliorer votre code
  • Écrire un code simple et compréhensible
  • Lisez la documentation rédigée par ceux qui pourraient
  • Suivez des programmeurs intéressants
  • Lire des livres sur le métier
  • Code! Code! Code!