[DUMD 1/24] Devenir un meilleur développeur

Auteur du billet de blog : Nicolas Hilaire - Neotech Solutions

Nicolas Hilaire

Consultant .NET
  Publié le mercredi 26 octobre 2016

Artisan logiciel particulièrement intéressé par les technologies .NET. Polyvalent et curieux, je suis néanmoins à l'écoute des autres technologies du marché. MVP (Microsoft Most Valuable Professional) de 2007 à 2014, je suis également auteur d'un ouvrage pour apprendre le C#, à destination des débutants et de plusieurs MOOCs sur le C#, Windows Phone ou ASP.NET MVC...

Devenir un meilleur développeur, vaste sujet. Et pour le traiter, je me lance dans une (longue) série de billets visant à partager des éléments que j'ai pu découvrir tout au long de ma carrière.

Il s'agit grosso modo d'un recueil de bonnes pratiques pour le développeur orienté objet.

 

Introduction

Alors, ça y est. Vous savez développer ? Félicitations et bienvenue dans le monde merveilleux des développeurs !

Vous avez lu pleins de tutoriels, des livres peut-être, ou reçu une formation. Vous avez pu mettre en pratique et créer vos premières applications.

C’est super n’est-ce pas ? Personnellement, j’adore développer. Créer, assembler, découvrir … et toujours apprendre de nouvelles choses.

Plus votre expérience dans le développement va grandir et mieux vous coderez, de jour en jour. Et puis vous repasserez sur du code que vous avez réalisé il y a quelques mois, voire quelques années et vous vous demanderez comment vous avez fait pour faire un truc aussi pourri ? Ce n’est pas possible, ce n’était pas moi !

Et si, pas de honte à avoir. Heureusement qu’on s’améliore au fur et à mesure, sinon cela serait tellement triste.

Si vous continuez à lire ce billet et que vous n'êtes pas encore partis sur Youtube, c’est que vous aussi, vous avez sans doute envie de faire mieux et je ne peux que vous en féliciter. C’est aussi ce que j’ai fait tout au long de ma carrière. Essayer de faire mieux, toujours faire mieux. Continuer à apprendre, toujours ; en lisant des ouvrages de références, en discutant avec des personnes plus expérimentées, en me cassant les dents sur des problématiques plus ou moins complexes.

Ce que je me propose ici c’est d’essayer de partager mon expérience et le fruit de mes différentes lectures, afin que vous ayez également vous aussi envie de faire encore mieux. Tout ne sera peut-être pas bon pour vous, vous ne serez peut-être pas d’accord avec tout ou alors vous ne serez peut-être pas prêt pour certaines choses, mais l’idée est d’essayer de recenser des bonnes pratiques afin d’aiguiser votre curiosité, que vous ayez envie de creuser certains points en profondeur, ou simplement que vous vous posiez des questions : “est-ce que je peux faire mieux” ?

 

Dans ces billets, il y aura de la théorie, mais aussi des exemples de code que je ferai en C#. Mais comme ces principes valent pour tous les autres langages orientés objets, n'hésitez pas à les appliquer ailleurs.

 

Le programme

Au programme, nous parlerons de propreté de code, un peu de design pattern (mais pas trop !), et d’orienté objet. Nous évoquerons les principes SOLID et également ceux gravitant autour de l’agilité. Et puis plein de petites autres choses qui j'espère vous donneront envie d'encore vous améliorer. Voici le plan prévisionnel que je compte suivre, sachant que j'ajouterai peut-être des billets, mais je n'en enlèverai sans doute pas car je souhaite traiter tous ces points :

 

Les bases de l'amélioration

  1. Pourquoi s'améliorer ?
  2. Écrivez du code propre
  3. Restez simple
  4. Utilisez correctement l'orienté-objet
  5. Soyez agile

 

Comprendre les design-patterns

  1. C'est quoi les design pattern ?
  2. Le design pattern Decorator
  3. Le design pattern Factory
  4. Le design pattern Adapter
  5. Le design pattern Facade
  6. Le design pattern Template Method
  7. Le design pattern Repository

 

Les principes SOLID

  1. C'est quoi les principes SOLID ?
  2. L'inversion des dépendances (Dependency Inversion Principle)
  3. La responsabilité unique (Single Responsibility Principle)
  4. Ouvert/fermé (Open/closed principle)
  5. La substitution de Liskov (Liskov substitution Principle)
  6. La ségrégation des interfaces (Interface segregation principle)

 

Bonus, des choses en vrac

  1. Ne pas être null
  2. L'immutabilité
  3. Les bonnes pratiques du DDD
  4. Des bonnes méthodes
  5. S'entraîner

 

Pas moins de 24 billets qu'il vous faudra apprendre par cœur si vous souhaitez postuler à Neotech-Solutions ^^.

C'en est fini de cette introduction, le prochain billet sera consacré au pourquoi de l'amélioration.

Commentaires