Python Vs Developers | Episode 1

A LIRE AUSSI

Par -

Encore une fois nous nous retrouvons, mais cette fois ci ce sera pour démarrer une série de tutoriels sur les technologies Python/ django.
L’objectif de ces tutoriels, qui, j’espère seront apprèciés aussi bien par les débutants en programmation que par les expérimentés,  c’est de découvrir ensemble toute  la puissance et la simplicité de ces outils.

Ceci dit, nous suivrons le plan suivant que nous remplirons au fur et à mesure que nous avancerons dans ces tutoriels:

Premiere partie: Let’s have fun with the snake :-P

  1. Python, un serpent ? un imposteur ? c’est ici que nous allons le découvrir
  2. Installation et prise en main de Python
  3. Concepts de base en Python
  4. Un peu de pratique


Deuxieme partie: Let’s dig  a little Deeper into the Python

Troisième partie: Introduction à Django, le framework web pour perfectionnistes pressés

Quatrième partie: Aller plus loin avec Django

A la  fin de cette série de tutoriel, j’espère que vous deviendrez aussi amoureux que moi de ce gros serpent et de sa clic d’amis et que vous commencerez à vous y interesser pour vous projets personnels et professionnels.

Première partie: Introduction à Python

 

Effrayant n’est ce pas ? :-D non pas la peine de vous enfuir, la peur de l’inconnu secoue les entrailles en effet, mais ici nous allons apprendre à apprivoiser la grosse bête et en faire notre amie. rien de mieux pour commencer qu’une fiche d’identité.

 

  1. Python, késako ?


Le nom python désigne pour les êtres humains normaux une famille de serpents non-vénimeux que l’on rencontre principalement en Afrique, Asie et Australie et dont les membres font partis des serpents les plus grands au monde …. mais ça c est pour les gens normaux j’ai dit. Pour vous les geeks, python désigne un langage de programmation de haut-niveau, généraliste, multiparadigme, et  interprété.. Ne faites pas cette tête. on va revenir sur chacun de ces termes sauvages:

 

  • Langage de programmation généraliste: on considère qu’un langage de programmation est généraliste s’il n est pas spécifique à un domaine précis, c’est à dire qu’il permet, contrairement aux DSL (domaines specifiques languages),  de régler des problèmes qui peuvent se présenter et qui appartiennent à des domaines totalement différent. En cela il ressemble au C/C++ qui est utilisé aussi bien pour écrire des systèmes d’exploitation que pour faire des jeux vidéos.


  • Langage de haut-niveau: pour faire simple, plus un langage de programmation est proche du langage naturel et permet de faire de l’abstraction. plus il est de haut-niveau et inversement plus il se rapproche du binaire, le langage compris par les ordinateurs, plus il est de bas niveau. Le langage Python est considéré comme un langage de haut-niveau parcequ’il permet comme nous allons le voir dans la suite, de résoudre des problèmes complexes avec un niveau d’abstraction très élevé, c’est à dire en très peu de mots. :-)


  • Langage multi-paradigme: Dans l’histoire des langages de programmation, les informaticiens ont inventé plusieurs manières d’aborder la résolution d’un problème donné. Certains résoudrons un problème en créant un ensemble de fonctions et procédure qui, lorsqu’elles coopérons de manière adéquate dans un programme principal, permettront d’avoir la solution au problème. On appelle cette approche, l’approche ou paradigme procédural. le langage C est un digne représentant de la programmation procédurale. A coté de la programmation procédurale, il existe tout une joyeuse bande de paradigme parmi lesquels je peux citer la programmation orientée objet, la programmation fonctionnelle, l’orientée aspect etc. Je vous invite a voir de la littérature à  ce niveau. Pour ce tutoriel nous retiendrons que Python permet de faire plusieurs types de paradigme de programmation à la fois. ;) Lesquels ? la suite au prochain épisode :D
  • Langage de programmation  interprété: voila en fait, il se trouve que l’on distingue principalement deux types de langage de programmation: les langages compilés et les langages interprétés: C’est quoi la différence entre ces deux me direz vous ? Eh bien c’ est tout bete, les langages compilés passent par un machin – bidule nommé compilateur et les langages interprétés passent par la case interpréteur. …. XD Comment ça ça veut rien dire comme définition ? Ben voyons, un langage est dit interprété si son code source n’est pas directement exécuté par la machine, mais passe par un autre programme appelé interpréteur où il est executé à la volée. Contrairement a ces langages, on rencontre les langages de programmation compilés, eux qui nécessitent un compilateur qui est aussi un programme prenant en entrée du code source et produisant en sortie un code executable, une bonne fois pour toute. Python fait parti des langages interprétés en cela qu il ne nécessite pas une phase de compilation pour faire tourner du code python sur une machine. ;) pour plus d’info, google est votre ami.


Voila après ce tour de piste des caractéristiques de base de ce qui deviendra bientot je l’espère notre langage de programmation préféré, nous allons continuer la carte d’identité de notre ami le serpent en faisant un peu d’histoire

 

  • Origines


Python peut etre  considéré comme un langage de programmation très jeune, par rapport aux dinosaures comme C. Il a été écrit par un certain Guido Van Rossum, et sa première sortie date de Février 1991. Il a été fortement inspiré par le langage ABC sur lequel travaillait l’auteur à l’époque et auquel il voulait apporter des solutions face à quelques problèmes rencontrés.

  • Implémentations

Il existe plusieurs implémentations du langage Python. Parmi les plus célébres nous retrouvons:

  • CPython, codée en C, la plus utilisée et appelée plus simplement Python.
  • Jython codée en java et fonctionnant sur les machines virtuelles java
  • IronPython, codée en C# et fonctionnant sur les plateformes .Net


CPython est la plus couramment utilisée, elle est aussi la plus stable et la plus robuste. Pour débuter nous nous servirons de cette implémentation. Plusieurs versions de Python existe dans cette implémentation:

  • Python 2.5
  • Python 2.6
  • Python 2.7
  • Python 3

La progression entre les versions n’est pas forcémment linéaire. Il existe une grande difference entre les version 2 et la version 3 du langage python. Dans le cours nous utiliserons  une version >= 2.6 et < 3.

  • Position par rapports aux autres langages

Comme vous le voyez, python se stabilise dans le top 10 des langages de programmations les plus utilisés au monde.

2. Installation et prise en main de Python

Assez de bavardage maintenant, nous allons commencer à voir un peu à quoi ressemble le serpent.
L’installation de Python est relativement simple, suivant l’environnement ou vous vous trouvez. Sur les plateformes Linux telles que ubuntu, une version de Python est préinstallée par défaut. Souvent  2.6 ou 2.7.
Sur windows il va falloir par contre l’installer. et pour cela rien de plus simple: rendez-vous sur cette page:
http://www.python.org/getit/

Choisissez la 2.7.3 avec Windows Installer. Une fois le téléchargement effectué, procédez à l’installation à la windows: Suivant > suivant > terminer :P

Un petit test pour voir si l’installation s’est bien déroulé:

  • Ouvrez votre terminal : sur windows faites Demarrer > executer > cmd
  • Puis une fois le prompt affiché vous tapez python pour lancer l’interpréteur interactif.
  • Vous devriez avoir quelque chose qui ressemble à ça.:

 

Voila à partir de ce moment, vous venez d’entrer dans le cercle restreint des humains qui ont Python installé dans leur machine.

Pour les débutants, il existe un IDE sympa qui regroupe un éditeur de texte en même temps qu’un interpréteur. Il permet d’aller vite et de débugguer rapidement votre. L’outil en question se nomme IDLE:

Allez dans votre installation Python en faisant cliquant sur  le menu Démarrer puis chercher le groupe Python comme sur la figure ci dessous:

Un click sur le programme IDLE ouvre la fenêtre suivante :

Je vous laisse explorer l’interface et voir tout ce qu’on peut faire avec cet outil, car c‘ est lui que nous utiliserons dans la suite du cours. ;) .

moustapha.sy

moustapha.sy

Ingénieur développeur, DBA et auditeur de sécurité, je suis passionné de mangas et de technologies, toujours soif d'apprendre.