© Marc Parizeau, Département de génie électrique et de génie informatique
GLO-1901 Introduction
à la programmation
avec Python
Normes de programmation
Marc Parizeau
(automne 2014)
GLO-1901 ⎯ Outils et normes de programmation
Éditeur de texte
•Outil important pour vous faciliter la vie
•Utilisez un éditeur qui connait le Python
✓coloriage syntaxique
✓indentation automatique
✓complétage automatique
•De nombreuses alternatives existent sur toutes
les plateformes
✓ipython notebook (début)
✓Sublime text (milieu)
✓Eclipse (fin)"
2
GLO-1901 ⎯ Outils et normes de programmation
Gestion du code source
•Un gestionnaire des versions de code source permet
✓de préserver l'historique de tous fichiers
✓de savoir quels changements ont été faits quand
✓et par qui
✓de revenir en arrière sur n'importe quel changement
✓par exemple, sur une version stable précédente du logiciel
✓de faciliter le travail en équipe
•Nous allons adopter Mercurial
✓un gestionnaire de code source distribué
✓écrit en Python
✓http://mercurial.selenic.com/
3
GLO-1901 ⎯ Outils et normes de programmation
Normes de
programmation
•Conventions que nous allons adopter
pour les travaux pratiques
✓pour améliorer la lisibilité du code
✓pour une documentation automatique
✓pour assimiler la façon pythonesque
•Nous allons nous inspirer du PEP #8"
(Python Enhancement Proposals)
✓http://www.python.org/dev/peps/pep-0008/
4
GLO-1901 ⎯ Outils et normes de programmation
•Encodage: UTF-8
•Identification de chaque fichier
✓IDUL de l'auteur
✓IDULs des co-équipiers (s'il y a lieu)
•Longueur des lignes:
✓100 caractères max (de préférence 80)
•Indentation:
✓4 espaces
✓jamais de <tab>
•Commentaires:
✓au début du fichier pour décrire le module/programme
✓au début de chaque classe pour la documenter
✓au début de chaque fonction pour la documenter
✓ailleurs selon les circonstances
1 / 10 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans l'interface ou les textes ? Ou savez-vous comment améliorer l'interface utilisateur de StudyLib ? N'hésitez pas à envoyer vos suggestions. C'est très important pour nous!