• [^] # Re: Rien de transcendant dirait-on

    Posté par . En réponse au journal Noop : encore un nouveau langage ou bien nouvelle génération de langage. Évalué à 2.

    Je vois pas la difficulté de son truc, donc je suis peut-être totalement à côté de la plaque, mais en python je ferais comme ça :


    class PGSqlDAO:
    ...def __init__(self, config):
    ......self._dbConn = Postgres(config['user'], config['password'], config['database'])
    ......#etc.


    Avec une config (provenant par exemple d’un fichier YAML)


    config['dao']['constructor'] = 'PGSqlDAO'
    config['dao']['user'] = 'admin'
    config['dao']['password'] = 'admin'
    config['dao']['database] = 'test'


    et dans l’utilisateur du DAO:


    class DAOUser:
    ...def __init__(self, config):
    ......self._dao = eval(config['dao']['constructor'])(config['dao']) # dans un cas réel, tu utiliserais un truc un peu moins bourrin que eval, mais l’idée est là