17.12.2012 Views

Programmation PYTHON - Zenk - Security - Repository

Programmation PYTHON - Zenk - Security - Repository

Programmation PYTHON - Zenk - Security - Repository

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

13<br />

Bonnes pratiques et<br />

optimisation du code<br />

Oh ! Come and see the violence inherent in the system ! — The Holy Grail<br />

« Oh ! Venez tous voir la violence qui se cache sous ce système ! »<br />

— Sacré Graal<br />

Python est souvent montré du doigt comme un langage lent. Constat évident<br />

puisqu’il est basé sur de l’interprétation et non sur de la compilation. Mais un programme<br />

Python bien écrit base la plupart du temps son travail sur des appels les plus<br />

directs à la couche compilée en C des bibliothèques. La vitesse d’un programme est<br />

donc inversement proportionnelle à la couche de code Python à traverser.<br />

Ce chapitre présente les outils et les bons réflexes à prendre pour rendre un programme<br />

le plus performant possible. Si les performances atteintes ne sont pas encore<br />

suffisantes, ce qui peut arriver dans certains domaines spécifiques comme les calculs<br />

matriciels dans les jeux, des bibliothèques ou des techniques spécifiques permettent<br />

de pallier ce problème.<br />

Le programme est encore trop lent ? Il reste possible de passer du côté obscur de la<br />

force, en codant tout ou partie du code dans une extension au langage en C.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!