DJANGO SIGNALS

Le but de ce tutoriel  est de vous montrer  une fonctionnalité intéressante sous Django appelé *signals* .
L’utilisation des signals  sous  django permet plusieurs choses :
Respecter Le Principe DRY.La plupart des frameworks modernes DJANGO  ,Rails veillent au respect de
ce principe  (Éviter de se répéter lorsque vous programmer  un Logiciel) .Plusieurs raisons peuvent
amener le développeur de ne pas le respecter (Délais de livraison trop courts ,projet  mal dimensionné ,
).La duplication du code est extrêmement dangereux car les conséquences sont sur le longs
termes.
Le développeur laisse en héritage du code très très mauvais, voir inutilisable .Une seule modification
doit être répercuté mille fois pour que le logiciel remarche ,c’est très mauvais.
Le principe DRY vous permet de coder une seule fois et de faire mouche a jamais .N’importe qui
peux étendre votre code sans grande difficulté.
DJANGO permet a bien des égards de voir l’application de ce principe  , le *signal* en est un.

Problème:
Imaginons le problème suivant,le développeur veux que lorsque une requête est passé
effectué une tache  bien définit.Deux solution s’offre a vous la plus sale est
de coder en dur  et sur chaque vue le même code :

def my_views()
 » »
 » »
mon code bla bla
def my_views2()
 » »
 » »
mon code bla bla

Il ne faut jamais faire ça c’est très mauvais.
La deuxième solution plus ou moins élégante est de définir une fonction quelque part
que vous appeler a chaque fois de besoin ( Ce n’est pas bon , vous perdez en découplage)
La solution idéale  est d’utiliser le *signal*  sous django .Le principe est
très simple : j’exécute quelque chose quand quelque chose se passe quelque part
dans l’application 😉

Cette exemple suivant [1]  permet par exemple de créer un fichier file.log et d’y écrire
la requête et la date a chaque fois que l’utilisateur accédé  a votre application.
[1] – https://github.com/aliounedia/django_tools/blob/master/learn_signals/

Publicités

0 Responses to “DJANGO SIGNALS”



  1. Laisser un commentaire

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s





%d blogueurs aiment cette page :