• [^] # Re: editeur à la place de l'IDE

    Posté par . En réponse au journal De la difficulté de contribuer à des gros projets. Évalué à 2.

    Il me semble que tu n'as pas compris mon exemple.
    vba ne gère pas ce genre de chose, par contre je ne connais pas asp.net
    Reprenons mon exemple pour une petite explication :
    import imp
    plugins = {"truc": None, "muche": None}
    for plugin in plugins.keys():
    plugins[plugin] = imp.load_source("", "%s.py" % plugin)

    J'espère que tu connais des bases de python.
    Le module imp sert à pouvoir jouer avec import de façon beaucoup plus libre : en effet, tu n'as pas à savoir ce que tu veux importer. Ça te permet par exemple de créer sans te fouler un système de plugins (qui sont alors sous forme de modules python)
    Ici j'ai décidé de stocker ces plugins dans un dictionnaire nommé plugins. Les clés sont les noms des modules, et les valeurs les modules eux même.
    Ensuite, j'importe chacun de ces modules pour l'insérer dans le dictionnaire.
    Et maintenant, plugins["truc"] a quelles fonctions et propriétés disponibles à ton avis ?

    Même moi je ne le sais pas si j'ai pas l'accès au fichier truc.py. Mais comment un EDI pourrait gérer ça ? Tu veux qu'il interprète le code ligne par ligne ? Tu tombes dans le risque que j'ai évoqué précédemment : un code buggué qui serait exécuté. Tu veux qu'il "comprenne" le code ? Il doit donc connaître tous les modules python standards, ainsi que leur utilité... Charmant programme en perspective !

    J'ai sur ma machine un bot IRC développé en utilisant notamment ces facultés. Si tu souhaites en savoir plus, contacte moi sur #testbot2@freenode.net (nick : PieD). Je me ferai un plaisir de t'expliquer plus en détail (ou à n'importe qui d'ailleurs) ce genre de joie pythonesque :)