Voici des aspects du developpement sur lesquels je dois me pencher un peu
plus. Merci pour le tuyau ;-)

Le 28 septembre 2011 19:18, Alioune Dia <[email protected]> a écrit :

>
> Le 28 septembre 2011 19:17, Patt Rick <[email protected]> a écrit :
>
> Pauvre de moi, j'ai jamais fait maths-info ;-)
>> mais c'est aussi pour ces raisons justement que je demandais
>>
> differentes maniere de proceder.
>>
>
>
> N’écoute pas Thomas c'est un puriste de l'informatique au vrai sens
> du terme, toi et moi on est n'est pas Guido Van Rossum, ni Thomas Noel
> on se moque de combien de secondes un code fait pour s’exécuter,
>  du moment que ça run, on est content.:-), c'est quoi ces  histoires de
> O(n) :-)
>
>
> Blague a part, il n'a pas tord, un bon code est un code optimum en terme
> de temps d’exécution et de caractères. Python introduit ce qu'on appelle
> des <iterator> et <generator> utilisé dans le module itertools.py.
> <iterator> règle le problème superflu des
> fonctions callback qui sont appelées dans les boucles <for> en permettant
> un accès aux valeurs des itérations en dehors des boucles.
> Pourquoi doit on forcement passer une fonction  a la boucle pour
> pouvoir traiter les valeurs de sortie ?. Un autre problème
> que les <Iterator> règlent est que je peux par exemple sortir
> des la première itération, ou la seconde ou a tout moment sans être
> obligé de parcourir tout une  liste, ni passer un call_back pour
> sortir .Avec une itération classique il est plus difficile
> de garder l’état des variables d’où l'introduction d'une nouvelle
> manière de faire qui garde l’état d’exécution a chaque appel (yield).
> A chaque appel la fonction s’exécute jusqu’à yield puis attend la
> seconde appelle.
>
> Ce qui serait génial se serait de comparer le temps d’exécution
> pour une fonction utilisant la magie de python (yield) et une
> fonction classique ;)
>
> Les Gurus Théorisent ici http://www.python.org/dev/peps/pep-0255/
>
> 1.Ce code est mauvais, callback n'a rien a faire dans test
> def test(callback, my_list):
>     for i in my_list :
>         if i=2:
>            callback(i)
>
> 2.Ce code est meilleur car plus facile a debug
> class MyIterator():
>     def __init__(self):
>         pass
>
>     def __next__(self):
>         while 1:
>         return 2
>
>     def __iter__(self):
>         return self
>
>
> for i in MyIterator.__iter__():
>        callback(i)
>
> 3. generator
>
> def  MyIterator():
>     yield 2
>
> for i in MyIterator():
>        callback(i)
> --Ad
>
>
>
> --
> Ce message a été envoyé à la liste [email protected]
> Gestion de votre abonnement : http://dakarlug.org/liste
> Archives : http://news.gmane.org/gmane.org.user-groups.linux.dakarlug
> Le site du DakarLUG : http://dakarlug.org
>



-- 
*
Sincerely,
*
*
*
*"still water is deep"*
*Patrick Nsukami, young JAVA EE developer, hi-tech lover!

Profile <http://www.doyoubuzz.com/patrick-nsukami> -
Twitter<http://twitter.com/#!/@LeMeteore>
**DakarLUG <http://blog.dakarlug.org/> member -
SeneJUG<http://www.senejug.com/> member
- Coders4Africa <http://coders4africa.org/> member *
*tel: +221 70 605 15 88 / +221 76 460 08 40

*
*
*
--
Ce message a été envoyé à la liste [email protected]
Gestion de votre abonnement : http://dakarlug.org/liste
Archives : http://news.gmane.org/gmane.org.user-groups.linux.dakarlug
Le site du DakarLUG : http://dakarlug.org

Répondre à