Une expression est un bout de code très simple, un script à l'état brut qui agit dans c4d sans aucune interface. C'est le niveau de programmation le plus simple et le plus rapide pour faire du "sur-mesure".
Un plugin doit avoir une structure particulière selon son type (plugin de type Tag, Shader, Filtre d'import...). Ces structures sont décrites et fournies dans le SDK COFFEE disponible sur http://www.plugincafe.com.
Si tu souhaites te lancer dans la programmation je te conseille de télécharger cette documentation qui explique toutes les fonctions du COFFEE avec des exemples.
En ce qui concerne les autres formats de plugins (cdl,mdl), ce sont des plugins développés en C++ et compilés hors C4D, ils nécessitent le C++SDK qui contient les librairies nécéssaires. Il faut noter que le C++ donne plus de possibilités que le COFFEE mais il faut compiler une version pour Mac (mdl) et une version pour PC (cdl).
Pour les plugins, il faut leur attribuer un numéo d'identification. Ce numéro unique évite que plusieurs plugins entrent en conflit dans C4D.
Une petite rectification sur les fichiers .cof: un plugin programmé en COFFEE est en cof pendant son développement (texte editable) et une fois terminé on peut le compiler en .cob, ce qui le rend non-modifiable. Le cof n'est donc pas réservé uniquement aux expressions mais aux programmes COFFEE quels qu'ils soient.
Pour compiler du cof vers le cob, il y a un petit plugin qui s'appelle "Compiler" et il est donné dans le SDK COFFEE, c'est un plugin en open-source (fichier cof).