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 :

Ressource / Documentation python concernant les bonnes pratiques


Sujet :

Python

  1. #1
    Membre régulier
    Inscrit en
    Juin 2004
    Messages
    75
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 75
    Points : 100
    Points
    100
    Par défaut Ressource / Documentation python concernant les bonnes pratiques
    Je sais qu'il y a plein d'information à lire un peu partout, mais j'ai vraiment du mal à voir pourquoi Python est si fantastique...

    Je m'explique....

    Pour moi python c'est un langage de script très cryptique avec des noms de méthodes courts, pas claire, dans une identation pas toujours facile à lire et qui me rappel (mauvais souvenir) le positionnement obligatoire des instructions en COBOL... Je viens d'un monde .Net où les noms de méthodes disent exactement, très précisemment ce que fait le code (quite à avoir un nom de 30 caractères)...

    Dans les standards PEP-8, il y a beaucoup de standards qui vont de soit, c'est facile de comprendre pourquoi c'est comme ça. Mais, il y a plein de cas où, personnelement et pour probablement plusieurs développeurs qui viennent du monde JAVA ou .Net, c'est très illisible et même contre-intuitif...

    Outre l'aspect visuel, je trouve des codes d'exemples, prit dans un pain et dans un seul fichier, très mal découpés et ça devient très difficile de se retrouver pour savoir qui fait quoi...

    On voit partout Python est orienté objet, tout le tralala, mais dans ma tête, j'ai bien du mal à voir du code Python qui suit certaine règle à la Clean Code avec des patterns bien établient (IoC, DI, Repository, UnitOfWork)...

    J'ai plus souvent l'impression de voir des SmartUI (anti-pattern) qui dépendent de la terre entière avec aucune réél separation of concern...

    Ceci dit, j'essaie vraiment d'apprendre le python et j'aimerais bien le faire...
    Pourriez-vous m'indiquer des bonnes ressources, documentation qui pourrait répondre à mes intérogations ?

    Merci!

  2. #2
    Expert éminent

    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    4 302
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2008
    Messages : 4 302
    Points : 6 782
    Points
    6 782
    Par défaut
    Salut,

    Il n'est pas impossible que tu sois tombé sur quelques mauvais exemples de code, mais je peux t'assurer que Python ne correspond en rien à l'idée que tu t'en est fait et surtout pas à cette description.

    Je t'ai déjà donné ce lien sur la ML mais, deux fois c'est toujours mieux.

    http://python.developpez.com/cours/apprendre-python3/

  3. #3
    Expert éminent
    Avatar de fred1599
    Homme Profil pro
    Lead Dev Python
    Inscrit en
    Juillet 2006
    Messages
    3 937
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Lead Dev Python
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2006
    Messages : 3 937
    Points : 7 345
    Points
    7 345
    Par défaut
    Bonjour,

    Ce genre de questions, arrivent souvent sur les forums, mais en bref

    Python c'est Python

    Il est inutile de comparer tels autres langages à python. C'est un langage mature, qui a fait ses preuves. Son grand avantage est sa flexibilité...

    Absolument éviter de coder avec python comme vous aviez codé dans votre/vos langage(s) précédent(s) !!!

    On peut toujours essayé de le faire et y arriver, mais le code risque d'être bancal, non maintenable et illisible.

    Les modules

    Autres avantages de ce langage est le nombre de modules python permettant de coder dans tout types de domaines comme le domaine


    • Applicatifs
    • Web
    • Statistiques
    • Réseaux
    • ...

    Un des modules vous permettra sans doute d'éviter très souvent de réinventer la roue.

    Les erreurs

    Python permet entre autres avec des messages d'erreur très explicites de débugger très rapidement son code et ça c'est un avantage niveau gain de temps.

    La documentation

    Elle est une des meilleures documentations concernant tous les langages confondus, très explicite, elle permettra en peu de secondes de recherches de palier à ses doutes et difficultés.

    L'interpréteur

    Permet de rendre facile les petits tests afin d'être sûr de ne pas se tromper lors de l'écriture du code.

    On pourra aussi tester des petits code de la documentation et voir un résultat immédiat.

    Il est aussi possible de voir très rapidement un message d'aide pour chaque fonction ou classe (help function) et la liste des attributs et méthodes de classe (dir function).

    Analyser son code

    Il est possible de vérifier que son code respecte bien la PEP8 (bon pour des projets d'envergures), les bugs, etc... à l'aide de modules spécifiques. Conseil : Pylint

    Le zen de Python

    Philosophie du langage, il permettra entre autres de rendre un code simple, lisible par tous, et d'autres règles importantes.

    La mémoire

    Vous ne gérez pas la mémoire avec python, tout est géré automatiquement. Encore un gain de temps.

    La portabilité

    Les modules de la standard library sont quasiment tous portable, sinon ça sera très facilement gérable autrement.

    Tout est fait pour simplifier le multiplatform.

    L'indentation

    Permet de rendre un code lisible et de détecter les débuts et fin de bloc.

    Bonne continuation...

  4. #4
    Nouveau membre du Club
    Homme Profil pro
    autodidacte
    Inscrit en
    Mars 2013
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : autodidacte

    Informations forums :
    Inscription : Mars 2013
    Messages : 33
    Points : 37
    Points
    37
    Par défaut
    La documentation française n'est pas le fort de python....

    D'ailleurs tous les cours dans leurs intégralités gagnent toujours et encore à être améliorés pour les débutants et ce pour n'importe quel langage que ce soit.

    N'en déplaise aux mecs qui sont sur les dents en permanence sur ce site.

  5. #5
    Expert éminent
    Avatar de fred1599
    Homme Profil pro
    Lead Dev Python
    Inscrit en
    Juillet 2006
    Messages
    3 937
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Lead Dev Python
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2006
    Messages : 3 937
    Points : 7 345
    Points
    7 345
    Par défaut
    La documentation française n'est pas le fort de python....
    On s'en fou, il y a l'anglais... C'est primordial en informatique. Je dis pas qu'il faut abandonner parce-que tu ne comprends pas l'anglais, mais simplement en évitant l'anglais tu vas passer à côté de beaucoup de documents de qualité.

    Il reste néanmoins qu'il y a beaucoup de documentations françaises. Avec un peu de recherches (voir plus haut dans les posts) tu trouveras sans doute ton bonheur.

    D'ailleurs tous les cours dans leurs intégralité gagnent toujours et encore à être améliorés pour les débutants et ce pour n'importe quelle langage que ce soit.
    Des documentations françaises ont fait leur preuve, n'étant pas plus bête qu'un autre, je pense que tu es autant capable qu'un autre avec de la concentration de t'en sortir.

    N'en déplaise au mecs qui sont sur les dents en permanence sur ce site..
    Je ne suis pas énervé, j'ai simplement fait une différence entre titre et paragraphe...

  6. #6
    Nouveau membre du Club
    Homme Profil pro
    autodidacte
    Inscrit en
    Mars 2013
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : autodidacte

    Informations forums :
    Inscription : Mars 2013
    Messages : 33
    Points : 37
    Points
    37
    Par défaut style agressif + fusion de deux messages d'affilé
    Pardon

    Le site officiel de python n'est pas en Français,comme pour beaucoup d'autres langages d'ailleurs.

    Quand vous êtes débutant et que vous ne parlez pas anglais,vous vous cassé les dents en essayant de déchiffrer des class dans la documentation officielle...

    Bien sur il y a les traducteurs mais là c'est pareil,quand vous cliquez pour traduire une page de anglais à français,le résultat est une sorte franglais croisé coréen..

  7. #7
    Expert éminent
    Avatar de fred1599
    Homme Profil pro
    Lead Dev Python
    Inscrit en
    Juillet 2006
    Messages
    3 937
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Lead Dev Python
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2006
    Messages : 3 937
    Points : 7 345
    Points
    7 345
    Par défaut
    Comme je l'ai dis plus haut des documentations françaises existent, ça sera un bon début...

Discussions similaires

  1. Réponses: 4
    Dernier message: 17/09/2010, 18h48
  2. [C#/ASP.Net/DAL] Quelles sont les bonnes pratiques ?
    Par fouhaa dans le forum Accès aux données
    Réponses: 4
    Dernier message: 14/07/2006, 00h54

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