diff --git a/chapters/python.tex b/chapters/python.tex index 5e8f777..da47e76 100644 --- a/chapters/python.tex +++ b/chapters/python.tex @@ -12,24 +12,29 @@ Le projet a décollé et Python est maintenant considéré comme l'un des langag Le langage est géré en partie par la \textit{Python Software Foundation}, créée en 2001, et en partie par différents sponsors, dont HPE, Intel et Google. -A première vue, et suivants les autres langages que vous connaitriez ou auriez déjà abordé, certains concepts restent difficiles à aborder: l'indentation définit l'étendue d'un bloc (classe, fonction, méthode, boucle, condition, il n'y a pas de typage fort des variables et le compilateur n'est pas là pour assurer le filet de sécurité avant la mise en production (puisqu'il n'y a pas de compilateur). -Et malgré ces quelques points, Python reste un langage généraliste accessible et "bon partout", et de pouvoir se reposer sur un écosystème stable et fonctionnel. +A première vue ou suivants les langages que vous connaitriez ou auriez déjà abordé, certains concepts restent difficiles à aborder: -Il fonctionne avec un système d'améliorations basées sur des propositions: les PEP, ou "\textbf{Python Enhancement Proposal}\index{PEP}". +\begin{itemize} + \item + L'indentation définit l'étendue d'un bloc (classe, fonction, méthode, boucle, condition), + \item + Il n'y a pas de typage fort des variables + \item + Le compilateur n'est pas là pour assurer le filet de sécurité avant la mise en production (puisqu'il n'y a pas de compilateur) +\end{itemize} + +Malgré ces quelques points, Python reste un langage généraliste accessible et "bon partout", et peut se reposer sur un écosystème stable et fonctionnel, qui tourne grâce avec un système d'améliorations basées sur des propositions: les PEP, ou "\textbf{Python Enhancement Proposal}\index{PEP}". Chacune d'entre elles doit être approuvée par le \href{http://fr.wikipedia.org/wiki/Benevolent_Dictator_for_Life}{Benevolent Dictator For Life\index{BDFL}}. Le langage Python utilise un typage dynamique appelé \href{https://fr.wikipedia.org/wiki/Duck_typing}{\textbf{duck typing}}: \begin{quote} -"\emph{When I see a bird that quacks like a duck, walks like a duck, has -feathers and webbed feet and associates with ducks --- I'm certainly -going to assume that he is a duck}" - - -- Source: \href{http://en.wikipedia.org/wiki/Duck_test}{Wikipedia}. + "\emph{When I see a bird that quacks like a duck, walks like a duck, has + feathers and webbed feet and associates with ducks --- I'm certainly + going to assume that he is a duck}" \footnote{\url{http://en.wikipedia.org/wiki/Duck_test}} \end{quote} -En fonction de votre niveau d'apprentissage du langage, plusieurs -ressources pourraient vous aider: +En fonction de votre niveau d'apprentissage du langage, plusieurs ressources pourraient vous aider: \begin{itemize} \item diff --git a/chapters/working-in-isolation.tex b/chapters/working-in-isolation.tex index e2b44d2..8081f6e 100644 --- a/chapters/working-in-isolation.tex +++ b/chapters/working-in-isolation.tex @@ -214,14 +214,13 @@ Cette partie dépasse mes compétences et connaissances, dans la mesure où je n Ce n'est pas l'envie qui manque, mais les idées et la nécessité. Ceci dit, Poetry propose un ensemble de règles et une préconfiguration qui (doivent) énormément facilite(r) la mise à disposition de librairies sur Pypi - et rien que ça, devrait ouvrir une partie de l'écosystème. -Les chapitres 7 et 8 de {[}Expert Python Programming - Third Edtion{]}(\#), écrit par Michal Jaworski et Tarek Ziadé en parlent très bien: +Michal Jaworski et Tarek Ziadé en parlent très bien \cite[Chapitres 7 et 8]{expert_python}: \begin{quote} - Python packaging can be a bit overwhelming at first. The main reason for - that is the confusion about proper tools for creating Python packages. - Anyway, once you create your first package, you will se that this is as - hard as it looks. Also, knowing propre, state-of-the-art packaging helps - a lot. + Python packaging can be a bit overwhelming at first. + The main reason for that is the confusion about proper tools for creating Python packages. + Anyway, once you create your first package, you will se that this is as hard as it looks. + Also, knowing propre, state-of-the-art packaging helps a lot. \end{quote} En gros, c'est ardu-au-début-mais-plus-trop-après. @@ -240,7 +239,14 @@ Les étapes sont les suivantes: Définir un ensemble d'actions (voire, de plugins nécessaires - lien avec le VCS, etc.) dans le fichier \texttt{setup.py}, et définir les propriétés du projet ou de la librairie dans le fichier \texttt{setup.cfg}. \end{enumerate} -Avec Poetry, deux commandes suffisent (théoriquement - puisque je n'ai pas essayé) : \texttt{poetry\ build} et \texttt{poetry\ publish}: +Avec Poetry, deux commandes suffisent \footnote{Théoriquement - puisque j'avoue n'avoir jamais essayé}: + +\begin{enumerate} + \item + \texttt{poetry\ build} + \item + \texttt{poetry\ publish} +\end{enumerate} \begin{verbatim} $ poetry build