IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

Quel usage faites vous de Python (2004 - 2008) ?


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 14
    Par défaut
    Citation Envoyé par Onarap
    A quoi bon définir des interfaces quand on peut faire du duck typing
    Connais pas du tout. Tu pourrais m'en dire plus ?

    Citation Envoyé par elisea
    Pour l'indentation je persiste à dire que c'est vraiment gênant génial tu veux dire
    Question de goût, je reste sur mes positions (et toi sur les tiennes j'imagine ). Compter les blancs, c'est l'enfer. J'ai déjà donné et je pensais en être débarrassée à jamais.

    Est-ce que quelqu'un connait un site qui expliciterait un peu les conventions PEP en français ? Parce que j'en ai trouvé en anglais, mais ça va bien 5 minutes, trop aride et pas d'exemples. Merci
      0  0

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    376
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 376
    Par défaut
    Moi j'aime bien le pricipe de définitions des block par l'indentation ...
    Au début ça m'a aussi filé des boutons, mais à l'usage c'est du bonheur !!!
    Il faut juste faire gaffe à ne pas mélanger les espace et les tabs ... c'est pas plus dur que de faire gaffe à ces '{' :p

    Pour ce qui est des classes abstraites, rien ne t'empeche de faire une classe avec pass ou raise NotImplementedError dans les fonctions. Ainsi ta classe ne fera rien ou levera une exception si tu essaye de l'instancier. Du coup tu est obligée de la surchargée. Ce qui nous donne en quelques sorte une classe abstraite. Si tu veux un exemple, regarde la lib SMTPServer. La methode proceed_message (si ma memoire est bonne) leve NotImplementedError. Tu coup elle se comporte exactement comme une fonction abstraite. Si tu regarde dans la Doc python, il explique que cet exception est la pour ca !

    Le modèle objet de python est simplicime et c'est voulu !!! Je ne suis pas pour le compliquer avec tout le tatouin (interfaces, classes abstraites etc.). Avec le modèle objet actuel, un peu d'astuce et de methode on peu arriver au meme résultat !!!!
      0  0

  3. #3
    Expert confirmé
    Avatar de Guigui_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2002
    Messages
    1 864
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2002
    Messages : 1 864
    Par défaut
    Citation Envoyé par elisea
    Question de goût, je reste sur mes positions (et toi sur les tiennes j'imagine ). Compter les blancs, c'est l'enfer. J'ai déjà donné et je pensais en être débarrassée à jamais.
    Mais jamais on ne compte les blancs !!!
    On n'indente jamais avec des espaces mais uniquement avec des tabulations. Comme si dans Word on centrait/alignait le texte en rajoutant des espaces !
      0  0

  4. #4
    Membre habitué
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 14
    Par défaut
    Citation Envoyé par getupa
    Moi j'aime bien le pricipe de définitions des block par l'indentation ...
    Au début ça m'a aussi filé des boutons, mais à l'usage c'est du bonheur !!!
    Il faut juste faire gaffe à ne pas mélanger les espace et les tabs ... c'est pas plus dur que de faire gaffe à ces '{' :p
    On verra bien, moi pour l'instant j'en suis encore à la poussée d'acné...

    Citation Envoyé par getupa
    Pour ce qui est des classes abstraites, rien ne t'empeche de faire une classe avec pass ou raise NotImplementedError dans les fonctions. Ainsi ta classe ne fera rien ou levera une exception si tu essaye de l'instancier. Du coup tu est obligée de la surchargée. Ce qui nous donne en quelques sorte une classe abstraite. Si tu veux un exemple, regarde la lib SMTPServer. La methode proceed_message (si ma memoire est bonne) leve NotImplementedError. Tu coup elle se comporte exactement comme une fonction abstraite. Si tu regarde dans la Doc python, il explique que cet exception est la pour ca !
    Merci du tuyau, c'est sûr que tout est dit dans les manuels mais je débute et les réponses que je trouve ici me font gagner beaucoup de temps
      0  0

  5. #5
    Membre actif
    Inscrit en
    Mars 2002
    Messages
    129
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 129
    Par défaut
    Citation Envoyé par elisea
    Citation Envoyé par Onarap
    A quoi bon définir des interfaces quand on peut faire du duck typing
    Connais pas du tout. Tu pourrais m'en dire plus ?
    Duck typing
      0  0

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    130
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 130
    Par défaut Mon usage du python
    Sur le site http://aaprog.free.fr on m'as "dit" que le python était un bon début pour devenir programmeur, et moi personellement le C++ me fait peur j'attendrai un peu . Je compte créer un jeu enligne(sans graphisme evidement(=3ans d'etude ouille) et de stratégie) avec le Python mias l'essentiel dans mon apprentissage du python est de devenir petit a petit un programmeur!!! Voila un bete usage du python...
      0  0

  7. #7
    Membre habitué
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 14
    Par défaut Re: Mon usage du python
    Citation Envoyé par Extra-Nitro
    Sur le site http://aaprog.free.fr mias l'essentiel dans mon apprentissage du python est de devenir petit a petit un programmeur!!!
    Alors commence par apprendre les principes de la programmation objet, et après tu choisiras ton langage en connaissance de cause.
      0  0

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    130
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 130
    Par défaut
    AAAAAAAAah j'ai un sillabus de 170page sur le POO Programmation Orienté Objet...je le lis avant tout?
      0  0

  9. #9
    Membre habitué
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 14
    Par défaut
    Citation Envoyé par Extra-Nitro
    AAAAAAAAah j'ai un sillabus de 170page sur le POO Programmation Orienté Objet...je le lis avant tout?
    Oui, et imprègne-toi bien des principes d'abstraction, encapsulation, héritage, polymorphisme, etc... Ce sont des principes qui reviennent dans tous les langages objets.
      0  0

  10. #10
    Membre chevronné
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    376
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 376
    Par défaut
    Heu moi je te conseillerai de commencer par le tutorial de python ... parce qu'avec un cours POO théorique, tu vas avoir envie de mourrir avant même d'avoir vu une ligne de code !
      0  0

  11. #11
    Membre habitué
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 14
    Par défaut
    Rien ne l'interdit de commencer l'étude d'un langage en parallèle... Maintenant avec des tutos comme le Swinnen où des tas de notions sont mélangées et balançées d'un coup au débutant, je lui souhaite bien du plaisir... Et puis je n'ai pas parlé de tout comprendre d'un coup mais au moins du plus important.
    Sans compter que ça m'étonnerait beaucoup que son tuto POO ne comporte pas d'exemples codés.
      0  0

  12. #12
    Membre confirmé
    Avatar de Olivier_
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    111
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 111
    Par défaut
    Citation Envoyé par elisea
    Rien ne l'interdit de commencer l'étude d'un langage en parallèle... Maintenant avec des tutos comme le Swinnen où des tas de notions sont mélangées et balançées d'un coup au débutant, je lui souhaite bien du plaisir... Et puis je n'ai pas parlé de tout comprendre d'un coup mais au moins du plus important.
    Sans compter que ça m'étonnerait beaucoup que son tuto POO ne comporte pas d'exemples codés.
    Je trouve le Swinnen au contraire excellent pour débuter.

    Les notions sont vues progressivement, on n'est pas obligé d'aller dans l'objet direct, il y a une bonne phase d'assimilation des principes algorithmiques qui sont bien plus essentiels que l'objet pour débuter.
      0  0

  13. #13
    Membre habitué
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 14
    Par défaut
    Citation Envoyé par Olivier_
    Les notions sont vues progressivement, on n'est pas obligé d'aller dans l'objet direct, il y a une bonne phase d'assimilation des principes algorithmiques qui sont bien plus essentiels que l'objet pour débuter.
    Ce bouquin balance en vrac tout ensemble au malheureux lecteur des notions de programmation, d'objet, de php, d'interface homme/machine et j'en passe. Bon courage au débutant qui s'y retrouve. C'est simple, moi qui ne suis pas débutante j'ai carrément laissé tomber ce bouquin pour récupérer un tutoriel beaucoup plus simple. Les choses doivent se faire progressivement et je ne dis pas ça pour justifier mon diplôme.
    Enfin bon, moi j'ai donné mon avis, maintenant le bleu il en fait ce qu'il veut...
      0  0

  14. #14
    Membre confirmé
    Avatar de Olivier_
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    111
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 111
    Par défaut
    Du PHP ?? on a pas dû lire le même bouquin !

    Je l'ai lu en tant que débutant total du Python, j'ai beaucoup apprécié la clarté des explications et je n'ai pas trouvé du tout que l'ensemble était en vrac

    Les chapitres sont bien dissociés, les chapitres de la fin permettent de synthétiser l'ensemble des connaissances acquises avec quelques nouveaux éléments et c'est plutôt pratique.

    Peut être que le fait que tu n'étais pas débutant... tu n'es peut être pas dans le lecteur cible !

    Je trouve hasardeux les commentaires de ce style avec une remarque du style "j'ai carrément laissé tomber ce bouquin", tu juges sans avoir lu le bouquin dans son ensemble, je vois mal comment tu peux être objectif.

    Just my little 2 cents.

    Pour ce qui est de l'objet, oui on fini par en fair si l'on souhaite programmer par la suite, mais pour l'apprentissage ce n'est en rien indispensable, surtout pas avec python qui n'est "qu'"orienté objet et non totalement objet comme Java par exemple.

    C'est un autre des avantages du Python.
    On peut utiliser un langage clair, simple sans utiliser les notions d'objets formellement (elles sont utilisées du fait que les éléments (listes, dico, etc) sont des objets).
    Ensuite pour passer aux classes, à l'héritage, etc, il faut un bagage minimum de programmation.
    Et chose essentielle AMHA, une solide base en algorithmique pour ne pas faire des programmes totalement merdiques.
      0  0

  15. #15
    Membre chevronné
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    376
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 376
    Par défaut
    Citation Envoyé par Olivier_
    Pour ce qui est de l'objet, oui on fini par en fair si l'on souhaite programmer par la suite, mais pour l'apprentissage ce n'est en rien indispensable, surtout pas avec python qui n'est "qu'"orienté objet et non totalement objet comme Java par exemple.
    Bien que je sois d'accord avec l'ensemble de ton message, cette partie me gene un peu ... java n'est pas totalement objet ... pour preuve, tu as des types int, long, byte etc qui ne sont pas des objets.
    Dans python par contre tout est objet. Pour preuve, tu peux utiliser les fonctions de la classe string sur une string "mastring" par exemple : ";".join (...) fonctionne.

    Par contre pour le style de programmation tu as raison. En java mm pour un simple hello world, tu est obligé de créer une classe. Alors qu'en python tu peux faire un soft entier sans même utiliser le mot clé class. Mais ca ne ve pas dire que python n'est qu'orienté objet ...
      0  0

  16. #16
    Membre habitué
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 14
    Par défaut
    Inutile de m'agresser, je n'ai rien à gagner dans l'histoire. Personnellement j'ai trouvé le Swinnen confus et hétéroclite et c'est mon droit de le dire même si ça te déplait.

    Comme je ne suis plus obligée de faire du python ("l'avantage" qu'il ne soit pas totalement objet étant plutôt un inconvénient à mes yeux), cela m'est à présent totalement égal vu que je n'ai jamais réellement accroché à ce langage. Donc je te laisse la place car je coupe l'alerte mail.

    Bien à toi
      0  0

  17. #17
    Membre confirmé
    Avatar de Olivier_
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    111
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 111
    Par défaut
    Citation Envoyé par getupa
    Bien que je sois d'accord avec l'ensemble de ton message, cette partie me gene un peu ... java n'est pas totalement objet ... pour preuve, tu as des types int, long, byte etc qui ne sont pas des objets.
    Dans python par contre tout est objet. Pour preuve, tu peux utiliser les fonctions de la classe string sur une string "mastring" par exemple : ";".join (...) fonctionne.

    Par contre pour le style de programmation tu as raison. En java mm pour un simple hello world, tu est obligé de créer une classe. Alors qu'en python tu peux faire un soft entier sans même utiliser le mot clé class. Mais ca ne ve pas dire que python n'est qu'orienté objet ...
    Oui getupa, tu expliques exactement ce que je voulais dire
    C'est vrai qu'en relisant mon message, ce n'était pas des plus clair

    En python on manipule sans arrêt des objets mais sans forcément trop le savoir ni sans avoir besoin des notions de POO.
    Alors qu'en Java, il est obligatoire de maitriser les notions de POO pour la moindre chose.
    (Java, je n'ai jamais pratiqué, mais l'idée est là, comme tu le dis, pour le moindre "hello world" il faut une class)

    Donc dans le fond, on est pas obligé de faire de l'objet pour faire du python même si de fait, tout est objet alors qu'en Java (toujours pour prendre un exemple), il faut impérativement maitriser ces notions.

    Et pour le cas général, la POO n'est pas indispensable pour programmer. Bien sûr, dès qu'on fait un projet un tant soit peu important, il faudra l'utiliser si on veut pas se tirer une balle.
      0  0

  18. #18
    Membre confirmé
    Avatar de Olivier_
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    111
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 111
    Par défaut
    Citation Envoyé par elisea
    Inutile de m'agresser, je n'ai rien à gagner dans l'histoire. Personnellement j'ai trouvé le Swinnen confus et hétéroclite et c'est mon droit de le dire même si ça te déplait.

    Comme je ne suis plus obligée de faire du python ("l'avantage" qu'il ne soit pas totalement objet étant plutôt un inconvénient à mes yeux), cela m'est à présent totalement égal vu que je n'ai jamais réellement accroché à ce langage. Donc je te laisse la place car je coupe l'alerte mail.

    Bien à toi
    Je ne t'agressais pas !
    J'ai juste du mal à comprendre comment on peut juger un livre sans l'avoir lu jusqu'au bout.

    Après, ce n'est pas le seul bouquin, il a au moins le mérite d'être à la portée du débutant contrairement à d'autres docs plus formelles.

    Après, on passe dans le subjectif pour les "j'aime pas python" et "le 100% objet est mieux que le mix objet/autre chose" donc je te laisse sur ton avis
    Il y a des choses qui me déplaisent aussi à ce niveau avec Python mais tout n'est pas à jeter loin de là
      0  0

  19. #19
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    130
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 130
    Par défaut
    Alors je suis a 10%(pourcent pas modulo) de mon silabus sur python, apres avoir entendu tout sa je suis tenté de commencer le poo, je ferai donc ca en parrallelle: pour ce qui est de elisa qui a arrete son livre en plein milieu, je la blame car d'apres le site aaprog.free.fr faire tout jusqu'au bout est une des dix lois d'or!!!Mais en même temps faut aps le prendre mechament si je dit sa par ce que par rapport a probablement 93% de gens de ce forum je suis un incapable...et c'est normal vu le temps depuis lequel j'ai commencé a programmer.

    C'est quoi cette histoire de Hello world et de pas que objet que objet?

    Et si il y a POO, quelle est la différence avec POAspect?
      0  0

  20. #20
    Membre confirmé
    Avatar de Olivier_
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    111
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 111
    Par défaut
    POO et POA, ce sont 2 types de programmation en fait.

    Un petit topo sur la POA :
    http://fr.wikipedia.org/wiki/Programmation_orient%C3%A9e_aspect
    sur la POO :
    http://fr.wikipedia.org/wiki/POO

    Je te déconseille d'apprendre la programmation orienté objet avant d'avoir bien assimilé les bases et fondement du langage que tu utilises.

    Le pas-à-pas pour un grand débutant comme tu sembles l'être est inévitable.
      0  0

Discussions similaires

  1. A quel site faites vous confiance pour acheter par VPC ?
    Par Gunner4902 dans le forum Ordinateurs
    Réponses: 45
    Dernier message: 26/05/2009, 11h53
  2. Réponses: 145
    Dernier message: 15/02/2009, 11h51
  3. [Archive] Quel est votre langage de programmation préféré ? (2004..2008)
    Par Idelways dans le forum Débats sur le développement - Le Best Of
    Réponses: 403
    Dernier message: 04/02/2009, 00h56
  4. Quel usage faite vous de zope?
    Par Extra-Nitro dans le forum Zope
    Réponses: 3
    Dernier message: 13/09/2006, 10h23
  5. Quels usages faites vous de Linux ?
    Par Hibou57 dans le forum Applications et environnements graphiques
    Réponses: 22
    Dernier message: 05/04/2006, 03h58

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo