df[lambda d: ~d['machin'] & d['truc']].assign(new=lambda d: d['a'] + d['b']).......
).
(function () { console.log('Anca est un con'); })
(qui est un exemple à la con, pas besoin d'être dans une fonction pour juste afficher une ligne)GuybrushVIsiblement, on est les deux seuls à en utiliser iciBen non ça sert souvent, et pour plein de trucs. Mais une fois qu'on a dit ça on est guère plus avancé, ça valait pas le coup d'ajouter un message au topic
type AddressValidator func (string) bool
Si je veux faire un AddressValidator
qui appelle une BDD, faudrait que je lui laisse le soin de créer lui même son handler de BDD, genrefunc BDDAddressValidator(address string) bool {
db:= sql.Open(...)
}
Booh, pas joli, pas testable. Du coup je peux contourner en écrivant un "générateur" d'AddressValidator
qui retourne une Closure et auquel je peux passer mon handler de BDD:func BDDAddressValidator(db *sql.DB) AddressValidator
return func (address string) bool {
// db exists now
}
}
Charge au code appellant de s'occuper de la connexion BDD, c'est beaucoup mieux
Ce message a été modifié 1 fois.
Dernière modification : 22 octobre 2018
à 09:58 par
Fabe.
1996-2024 — Lexpage v4 — GPLv3 (sources)
page générée le 23 décembre 2024 à 11:05:38