EMC2 est souple et modulaire. Ces attributs l’ont fait apparaître à certains comme un brouillon de petits morceaux confus, ils se sont demandé pourquoi il en était ainsi. Cette page tente de répondre à cette question avant que vous lecteurs, ne plongiez dedans pour vous faire votre propre idée.

EMC a débuté à l’institut national des standards et des technologies des Etats Unis, le NIST. Il a mûri comme un logiciel fonctionnant sur le système d’exploitation Unix. Unix le rendait différent. Très tôt des développeurs Unix ont apporté une série d’idées concernant l'écriture du code, c’est devenu une écriture selon «la tradition d’Unix». Les premiers auteurs d’EMC ont suivi cette voie.

 Eric S. Raymond, dans son livre The Art of Unix Programming, résume la
philosophie Unix par la philosophie largement utilisée en ingéniérie,
le principe KISS Keep it Simple, Stupid Reste Simple, Crétin ou Sois
Simple et Concis. Puis il décrit sa vision selon laquelle cette
philosophie globale s'applique en tant que norme culturelle Unix, bien
qu'on trouve sans surprise de graves entorses à la plupart des règles
Unix suivantes:
  • Règle de modularité: Ecrire des éléments simples reliés par de bonnes interfaces.

  • Règle de clarté: La Clarté vaut mieux que l’ingéniosité.

  • Règle de composition: Concevoir des programmes qui peuvent être reliés à  d’autres programmes.

  • Règle de séparation: Séparer les règles du fonctionnement; Séparer les interfaces du mécanisme.
    [Trouvé sur http://fr.wikipedia.org/wiki/Philosophie_d%27Unix le 09/09/2008 ]

    1. Raymond offre d’autres règles mais ces quatre décrivent les caractéristiques essentielles du système de contrôle de mouvement EMC2.

La règle de Modularité est critique. Tout au long de ces manuels, vous trouverez des discussions à propos de l’interpréteur ou à propos des planificateurs de tâche ou de mouvement ou encore à propos de HAL. Chacun d’eux est un module ou un ensemble de modules. Cette modularité vous permettra de ne connecter entre elles que les parties dont vous avez besoin pour le bon fonctionnement de votre machine.

La règle de clarté est essentielle. EMC2 est en perpétuelle évolution, il n’est pas terminé et ne le sera jamais. Il est assez complet pour piloter toutes les machines que nous avons voulu qu’il pilote. Une bonne partie de cette évolution est atteinte parce que les utilisateurs et les développeurs peuvent voir le travail des autres et construire sur ce qui est déjà fait.

La règle de composition nous permet de concevoir et de construire un contrôleur à partir des nombreux modules existants, en les rendant connectables entre eux. Nous obtenons cette connectivité en appliquant une interface standard à tous les modules et en suivant ce standard.

La règle de séparation exige que chaque petite chose soit faite par une partie distincte. En séparant les fonctions, le dépannage est rendu plus aisé, le remplacement de modules par d’autres peut être fait à l’intérieur du système et la comparaison s’effectuer facilement.

Qu’apporte la fameuse «tradition d’Unix» à vous, utilisateurs d’EMC2. Elle signifie que vous pourrez faire des choix sur la façon d’utiliser le système. Beaucoup de ces choix affecteront les parties intégrées à la machine, mais beaucoup également affecteront la manière dont vous utiliserez votre machine. Au cours de votre lecture, vous trouverez différents endroits où vous pourrez faire des comparaisons. Finalement vous pourrez dire «J’utiliserai cette interface plutôt que telle autre» ou, «J'écrirai cette nouvelle partie de telle manière plutôt que de telle autre.» Tout au long de ces manuels nous décrirons l'étendue des possibilités d’EMC2 actuellement disponibles.

Puisque vous commencez votre voyage dans l’utilisation d’EMC2 nous vous proposons ces deux citations:
[Trouvé sur http://fr.wikipedia.org/wiki/Philosophie_d%27Unix le 06/07/2008 ]

  • "Unix n’a pas été conçu pour empêcher ses utilisateurs de commettre des actes stupides, car cela les empêcherait aussi de réaliser des actes ingénieux."   Doug Gwyn

  • "Unix est convivial. Cependant Unix ne précise pas vraiment avec qui."   Steven King