diff --git a/algorithmique/cours/fondement.txt b/algorithmique/cours/fondement.txt index 3baadf5..af45b06 100644 --- a/algorithmique/cours/fondement.txt +++ b/algorithmique/cours/fondement.txt @@ -18,17 +18,19 @@ explication du fonctionnement d'une machine abstraite de bas niveau, puis en allant de plus en plus haut, mais étant sous-entendu qu'il faut rester connecté au bas niveau (comprendre comment ça se passe derrière la scène). -Dans ces deux cas, il est sous-entendu qu'on apprend plus de choses et plus -rapidement en mettant les mains dans le cambouis, ce qui vrai bien sûr. Mais cela -sous-entend qu'un développeur doit rester le nez dans le guidon, ou au moins qu'il -se doit d'être un expert du système dans lequel il évolue (connaissance du système -d'exploitation, binding avec le C, du ramasse miette (garbage collector), -interaction avec les différentes librairies, gestion et optimisation de la mémoire, -architecture par microservices, threads...) +Dans ces deux cas, il est sous-entendu qu'on apprend plus de choses et plus rapidement en mettant +les mains dans le cambouis, ce qui vrai bien sûr. Mais cela sous-entend qu'un développeur doit +rester le nez dans le guidon. Qu'il doit être un expert de son domaine en accumulant des technos +sans aucun recul. Bie sûr il se doit d'être un expert du système dans lequel il évolue +(connaissance du système d'exploitation, binding avec le C, du ramasse miette (garbage +collector), interaction avec les différentes librairies, gestion et optimisation de la mémoire, +architecture par microservices, threads...) mais il doit aussi être capable de prendre du recul. -L'approche algorithmique consiste en exactement le contraire : elle commence par se -placer du côté de l'esprit humain et de ses capacités de compréhension et -d'abstraction. +L'approche algorithmique (algorithmique de pseudo code, algorithmique algébrique et modulaire) +est un véritable moyen pour le programmeur de prendre du recul : elle commence par se placer du +côté de l'esprit humain et de ses capacités de compréhension et d'abstraction, elle autorise une +pensée rationnelle sur l'art de programmer et permet au programmeur d'effectuer les bons choix, +en connaissance de sa discipline. Le lien est fait ensuite avec le plus bas niveau grâce une implémentation effective des langages à partir des paradigmes de rationalisation de la penseée (modules,