Il y a quelques mois, nous avons commencé à développer une application pour contrôler un équipement de test développé en interne et enregistrer un ensemble de mesures. Il devrait avoir une interface utilisateur simple, et nécessiterait probablement des threads en raison de l'enregistrement continu qui doit avoir lieu. Cette application sera utilisée pendant quelques années et sera maintenue par plusieurs étudiants en informatique au cours de cette période.
Notre patron a obtenu son diplôme il y a environ 30 ans (pour ne pas être considéré comme une infraction; j'ai également plus de la moitié de ce temps sur le dos) et a demandé que nous développions cette application dans ANSI C. La raison en est qu'il est le seul sera tout le temps, et par conséquent, il doit être capable de comprendre ce que nous faisons. Il a également décidé que nous ne devrions utiliser aucun type de données abstrait; il nous a même donné une liste avec le nom des variables globales (soupir) qu'il veut que nous utilisions.
J'ai en fait essayé cette approche pendant un moment, mais cela me ralentissait vraiment pour m'assurer que toutes les opérations de pointeur étaient sécurisées et que toutes les chaînes avaient la bonne taille. De plus, le nombre de lignes de code liées au problème en question ne représentait qu'une petite fraction de notre base de code. Après quelques jours, j'ai tout abandonné et j'ai recommencé à utiliser C #. Notre patron a déjà vu le programme en cours et il aime son fonctionnement, mais il ne sait pas qu'il est écrit dans une autre langue.
La semaine prochaine, nous nous retrouverons tous les deux pour examiner le code source, afin qu'il "sache le maintenir". J'ai un peu peur et j'aimerais que vous me disiez quels arguments je pourrais utiliser pour étayer ma décision.
Lâche vôtre,