<?xml version="1.0" encoding="ISO-8859-1"?>

<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/">
	<channel>
		<title>Forum du club des développeurs et IT Pro - Blogs - MPython Alaplancha</title>
		<link>https://www.developpez.net/forums/blogs/1443512-mpython-alaplancha/</link>
		<description>Developpez.com, le Club des Développeurs et IT Pro</description>
		<language>fr</language>
		<lastBuildDate>Wed, 06 May 2026 22:18:15 GMT</lastBuildDate>
		<generator>vBulletin</generator>
		<ttl>15</ttl>
		<image>
			<url>https://forum.developpez.be/images/misc/rss.jpg</url>
			<title>Forum du club des développeurs et IT Pro - Blogs - MPython Alaplancha</title>
			<link>https://www.developpez.net/forums/blogs/1443512-mpython-alaplancha/</link>
		</image>
		<item>
			<title>Kivy, ce framework python aux capacités insoupçonnées et méconnues</title>
			<link>https://www.developpez.net/forums/blogs/1443512-mpython-alaplancha/b10703/kivy-framework-python-aux-capacites-insoupconnees-meconnues/</link>
			<pubDate>Sun, 08 Jun 2025 19:43:52 GMT</pubDate>
			<description>Ce billet pour évoquer...</description>
			<content:encoded><![CDATA[<blockquote class="blogcontent restore">Ce billet pour évoquer certains aspects de Kivy largement méconnus, y compris par les développeurs qui l’utilisent.<br />
Kivy est souvent réduit à son usage le plus documenté et le plus répandu : la création d’applications Android. <br />
Mais ce framework offre bien plus.<br />
<br />
Dans un précédent article, j’ai comparé Kivy à Pygame. Grâce à sa technologie reposant sur OpenGL, Kivy s’est révélé bien plus performant dans le contexte du développement de jeux; un domaine où il est pourtant rarement cité.<br />
<br />
Kivy peut également être utilisé pour développer des logiciels pour le bureau.<br />
Bien que ses widgets soient conçus à l’origine pour le tactile, sa flexibilité est telle qu’il permet, grâce à sa classe de base Widget, de créer n’importe quelle interface graphique, avec n’importe quel visuel.<br />
Vous pouvez réaliser ce que votre imagination est capable de concevoir.<br />
Tout devient possible, et c’est ce que j’aime avec Kivy.<br />
Vous pouvez (avec un peu de travail) concevoir votre propre logique d’interface, vos propres composants graphiques, car Kivy permet aussi de travailler à bas niveau.<br />
Certes, ce n’est pas un usage commun, et je suis une des rares personnes qui développent dans ce sens.<br />
Mais c’est cette liberté que j’aime et que je promeus  (notamment sur le Discord dédié à Kivy).<br />
<br />
Pour l'exemple, ci-joint quelques captures d’écran d’une interface bureau pour un projet en cours, faite avec Kivy, dont je voulais une intégration visuelle avec le thème de ma Debian 12 Mate.<br />
<br />
<img src="https://www.developpez.net/forums/attachments/p667944d1749410762/c-cpp/c/reseau/librairies-standard-slang-h-curses-h/capture-dvp1.png/" border="0" alt="Nom : Capture-DVP1.png
Affichages : 164
Taille : 84,1 Ko"  style="float: CONFIG" /><br />
<br />
<img src="https://www.developpez.net/forums/attachments/p667942d1749410641/c-cpp/c/reseau/librairies-standard-slang-h-curses-h/capture-dvp4.png/" border="0" alt="Nom : Capture-DVP4.png
Affichages : 142
Taille : 250,1 Ko"  style="float: CONFIG" /><br />
<br />
<img src="https://www.developpez.net/forums/attachments/p667945d1749411357/c-cpp/c/reseau/librairies-standard-slang-h-curses-h/capturepour-dvp.png/" border="0" alt="Nom : Capturepour-DVP.png
Affichages : 140
Taille : 106,3 Ko"  style="float: CONFIG" /></blockquote>

]]></content:encoded>
			<dc:creator>MPython Alaplancha</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/blogs/1443512-mpython-alaplancha/b10703/kivy-framework-python-aux-capacites-insoupconnees-meconnues/</guid>
		</item>
		<item>
			<title>Pourquoi choisir Kivy plutôt que Pygame pour la création de jeux graphiques en Python ?</title>
			<link>https://www.developpez.net/forums/blogs/1443512-mpython-alaplancha/b10686/pourquoi-choisir-kivy-plutot-pygame-creation-jeux-graphiques-python/</link>
			<pubDate>Wed, 02 Apr 2025 07:29:40 GMT</pubDate>
			<description><![CDATA[Lorsqu'il s'agit de...]]></description>
			<content:encoded><![CDATA[<blockquote class="blogcontent restore">Lorsqu'il s'agit de développer des jeux en Python, Pygame est souvent recommandé comme le premier choix. Cette bibliothèque, bien que populaire et accessible, révèle rapidement ses limites lorsqu'on cherche à créer des jeux fluides et visuellement avancés. Kivy, en revanche, bien que souvent associé au développement d'interfaces utilisateur, se révèle être une alternative beaucoup plus performante pour le développement de jeux graphiques modernes.<br />
<br />
L'un des plus grands avantages de Kivy par rapport à Pygame <u><b>est son utilisation native de l’accélération matérielle</b></u> via OpenGL ES 2.0. Grâce à cette approche, Kivy peut :<br />
<br />
    <ul><li style=""><b>Exploiter pleinement le GPU, permettant des performances accrues.</b></li><li style="">  <b>  Afficher des animations fluides même sur des configurations modestes.</b></li><li style="">    <b>Gérer des effets graphiques avancés</b> (shaders, ombrages, post-traitement, déformation, mapping, etc.) grâce à GLSL (OpenGL Shading Language), le tout de manière fluide et optimisée.</li></ul><br />
Pygame, quant à lui, repose principalement sur SDL (Simple DirectMedia Layer), qui fonctionne essentiellement sur le CPU. Bien que SDL2 améliore l'utilisation du GPU, son intégration reste limitée comparée à ce que Kivy peut offrir avec OpenGL.<br />
<br />
Un autre point fort de Kivy est sa conception multi-plateforme. Grâce à Kivy, un jeu peut être exécuté sur Windows, Linux, macOS, Android et iOS avec peu ou pas de modifications du code. Cela permet de cibler un large éventail de dispositifs, des ordinateurs aux appareils mobiles, sans devoir repartir de zéro pour chaque plateforme.<br />
<br />
En comparaison, Pygame, bien qu'il fonctionne sur plusieurs systèmes d'exploitation, est principalement pensé pour les environnements de bureau. Son support pour les appareils mobiles est limité.<br />
<br />
Kivy se distingue aussi par la qualité de son interface utilisateur. Contrairement à Pygame, où l’on doit développer ses propres systèmes de gestion de boutons, menus et autres éléments interactifs, Kivy propose une large gamme de widgets prêts à l'emploi. Cela permet de créer des interfaces ergonomiques et réactives, essentielles pour les jeux nécessitant des menus, des inventaires, ou des systèmes de dialogue complexes.<br />
<br />
Pygame, quant à lui, ne dispose pas de support natif pour des fonctionnalités d'interface sophistiquées, ce qui impose de gérer ces éléments de manière manuelle et peut rendre le processus plus complexe et long.<br />
<br />
Kivy intègre également un système d’événements avancé, facilitant la gestion des interactions complexes, du toucher et du multitouch. Cela le rend particulièrement adapté pour des jeux mobiles et tactiles. En revanche, Pygame est avant tout conçu pour des jeux classiques basés sur le clavier et la souris. Si vous envisagez de créer un jeu pour des appareils tactiles, Kivy sera bien plus efficace.<br />
<br />
<b>Conclusion:</b> Choisir Kivy pour vos jeux graphiques Python, c'est opter pour la modernité, la performance et la compatibilité multi-plateforme. 8-)</blockquote>

]]></content:encoded>
			<dc:creator>MPython Alaplancha</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/blogs/1443512-mpython-alaplancha/b10686/pourquoi-choisir-kivy-plutot-pygame-creation-jeux-graphiques-python/</guid>
		</item>
		<item>
			<title>The Pycon Parade</title>
			<link>https://www.developpez.net/forums/blogs/1443512-mpython-alaplancha/b10633/the-pycon-parade/</link>
			<pubDate>Wed, 11 Sep 2024 10:39:09 GMT</pubDate>
			<description><![CDATA[Bonjour. 
J'ai réalisé cette...]]></description>
			<content:encoded><![CDATA[<blockquote class="blogcontent restore">Bonjour.<br />
J'ai réalisé cette animation en hommage aux contributeurs Python.<br />
Merci à eux!<br />

<div class="video-container"><iframe class="restrain" title="YouTube video player" width="560" height="315" allowfullscreen src="//www.youtube.com/embed/L8aVtlaYwYI?feature=shared?wmode=transparent&amp;fs=1" frameborder="0"></iframe></div>
<br />
Réalisée avec Kivy, cette animation est à 99,942% écrite en python :lol:. (le reste est un shader GLSL).</blockquote>

]]></content:encoded>
			<dc:creator>MPython Alaplancha</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/blogs/1443512-mpython-alaplancha/b10633/the-pycon-parade/</guid>
		</item>
		<item>
			<title><![CDATA[PEP738 Proposition de Support Officiel d'Android dans CPython]]></title>
			<link>https://www.developpez.net/forums/blogs/1443512-mpython-alaplancha/b10630/pep738-proposition-support-officiel-d-android-cpython/</link>
			<pubDate>Sat, 31 Aug 2024 04:05:47 GMT</pubDate>
			<description>En bref: 
 
---Citation---...</description>
			<content:encoded><![CDATA[<blockquote class="blogcontent restore">En bref:<br />
<div class="bbcode_container">
	<div class="bbcode_quote">
		<div class="quote_container">
			<div class="bbcode_quote_container"></div>
			
				Le PEP 738 propose d'ajouter Android comme une plateforme officiellement supportée par CPython, avec un objectif de support initial pour Python 3.13. Android, qui équipe environ 70 % des appareils mobiles, n'était jusqu'ici pas pris en charge officiellement par CPython, bien que des projets comme Chaquopy, BeeWare  et Kivy aient déjà prouvé la faisabilité technique de cette intégration.<br />
<br />
Android est basé sur un noyau Linux, mais utilise une bibliothèque C spécifique (Bionic) et une organisation unique du système de fichiers, ce qui le rend incompatible avec les autres distributions Linux. Cependant, il est relativement compatible au niveau du code source avec Linux.<br />
<br />
Cette initiative est cruciale pour maintenir Python pertinent sur les plateformes mobiles, particulièrement en éducation, où les utilisateurs se tournent de plus en plus vers ces appareils.
			
		</div>
	</div>
</div><a href="https://peps.python.org/pep-0738/" target="_blank">https://peps.python.org/pep-0738/</a><br />
:D</blockquote>

]]></content:encoded>
			<dc:creator>MPython Alaplancha</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/blogs/1443512-mpython-alaplancha/b10630/pep738-proposition-support-officiel-d-android-cpython/</guid>
		</item>
		<item>
			<title><![CDATA[[Python] Programmez pour Android avec le framework Kivy]]></title>
			<link>https://www.developpez.net/forums/blogs/1443512-mpython-alaplancha/b10577/python-programmez-android-framework-kivy/</link>
			<pubDate>Mon, 12 Feb 2024 11:36:12 GMT</pubDate>
			<description>Ce billet pour faire la...</description>
			<content:encoded><![CDATA[<blockquote class="blogcontent restore">Ce billet pour faire la promotion de Kivy le grand absent des forums francophones. J'en ignore la raison, car l'essayer c'est l'adopter! :P <br />
Vous aimez programmer en python et vous voulez créer des applications interactives avec une interface utilisateur attrayante pour une variété de plateformes comme Windows, macOS, Linux, iOS ou Android?<br />
Alors Kivy est fait pour vous!<br />
<br />
Il est bien plus qu'un simple binding. Il s'agit d'un framework complet qui permet aux développeurs de créer des applications riches en fonctionnalités, offrant une expérience utilisateur fluide et intuitive.<br />
<br />
 Kivy offre une approche de développement centrée sur Python, permettant aux développeurs de se focaliser sur la logique métier de leurs applications, tout en laissant de côté les complexités liées à la plateforme sous-jacente. Par ailleurs, Kivy utilise le langage KV (similaire au QML de QT) pour séparer la logique de présentation de la logique métier. Cela simplifie la création d'interfaces utilisateur en permettant aux développeurs de décrire la structure et l'apparence des éléments graphiques de manière déclarative et distincte du code Python.<br />
<br />
Basé sur OpenGL, il est capable de créer des animations fluide et attrayante, ce qui facilite la conception et la mise en page des éléments graphiques. Vous pouvez même créer des jeux en 2D. Comme exemple, je vous montre ce casse briques que j'ai écrit juste après avoir suivi le Tutoriel Pong de la documentation. Il s'agit donc d' une étude perfectible qui avait pour but de me familiariser à son fonctionnement . Je vous la partage pour vous montrer ce qu'un débutant peut rapidement faire. 
<div class="video-container"><iframe class="restrain" title="YouTube video player" width="560" height="315" allowfullscreen src="//www.youtube.com/embed/PwpJ-FO6JBo?feature=shared?wmode=transparent&amp;fs=1" frameborder="0"></iframe></div>
<br />
Vous pouvez bien entendu réaliser des choses bien plus sérieuses :D .<br />
<br />
Cerise sur le gâteau Kivy est distribué sous la licence MIT<br />
<br />
J'espère vous avoir mis l'eau à la bouche. Sinon allez donc voir les jolis widgets proposés par KivyMD. <br />
KivyMD est une extension de Kivy qui fournit des widgets conformes aux principes du Material Design de Google.<br />
Un petit avant goût: <img src="https://www.developpez.net/forums/attachment.php?attachmentid=650669&amp;d=1707737613" border="0" alt="Nom : theme-style-switch-animation_r.gif
Affichages : 10043
Taille : 103,8 Ko"  style="float: CONFIG" /></blockquote>

]]></content:encoded>
			<dc:creator>MPython Alaplancha</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/blogs/1443512-mpython-alaplancha/b10577/python-programmez-android-framework-kivy/</guid>
		</item>
		<item>
			<title><![CDATA[Compilation d'une version de python3.x sur debian/ubuntu]]></title>
			<link>https://www.developpez.net/forums/blogs/1443512-mpython-alaplancha/b10387/compilation-d-version-python3-x-debian-ubuntu/</link>
			<pubDate>Sat, 19 Nov 2022 05:13:13 GMT</pubDate>
			<description>Bonjour, 
Ce billet pour...</description>
			<content:encoded><![CDATA[<blockquote class="blogcontent restore">Bonjour,<br />
Ce billet pour décrire comment compiler n'importe quelle version de python sur une distribution debian and co.<br />
<br />
<ol class="decimal"><li style=""><u><b>Définition</b></u><br />
La compilation consiste à transformer le code source d’une application en un code binaire  qui peut ensuite être exécuté. <br />
<br /></li><li style=""><u><b><font color="#FF0000">Avertissement:</font></b></u><br />
Bien que la procédure pour compiler python soit relativement simple, compiler comporte des risques. Aussi si vous êtes un débutant linux des premières heures, passez votre chemin ;) <br />
<font color="#FF0000">&lt;!&gt;</font> Le Pc doit être branché sous secteur pendant toute la procédure <br />
<br /></li><li style=""><u><b>Installer les dépendances qui vont bien</b></u>:<br />
<div class="bbcode_container">
	<table width="100%" border="0" cellspacing="0" cellpadding="0"><tr>
	<td style="border: 0; padding: 0; text-align: left">Code  :</td>
	<td style="border: 0; padding: 0; text-align: right"><a href="#" onclick="return ano_selectionnerCode(this);">Sélectionner tout</a> -
	<a href="#" onclick="return ano_etendreCode(this);">Visualiser dans une fenêtre à part</a></td></tr></table>
	<pre class="bbcode_code" style="height:72px;"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="26"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br /></div></td><td valign="top"><pre style="margin: 0">apt install make build-essential libssl-dev zlib1g-dev libbz2-dev \
libreadline-dev libsqlite3-dev wget curl llvm libncursesw5-dev \
xz-utils tk-dev libxml2-dev libxmlsec1-dev libffi-dev liblzma-dev</pre></td></tr></table></pre>
</div></li><li style=""><u><b>Téléchargement de la version de python souhaitée</b></u>:<br />
Allez sur le site de python <a href="https://www.python.org/downloads/source/" target="_blank">https://www.python.org/downloads/source/</a>  <br />
Cherchez la version de python qui vous intéresse ,puis , notez le lien correspondant à <font color="#0000FF">Download Gzipped source tarball </font>que vous transmettrez à wget.<br />
Exemple avec python3.10.7:<br />
<div class="bbcode_container">
	<table width="100%" border="0" cellspacing="0" cellpadding="0"><tr>
	<td style="border: 0; padding: 0; text-align: left">Code  :</td>
	<td style="border: 0; padding: 0; text-align: right"><a href="#" onclick="return ano_selectionnerCode(this);">Sélectionner tout</a> -
	<a href="#" onclick="return ano_etendreCode(this);">Visualiser dans une fenêtre à part</a></td></tr></table>
	<pre class="bbcode_code" style="height:60px;"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="26"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br /></div></td><td valign="top"><pre style="margin: 0">wget https://www.python.org/ftp/python/3.10.7/Python-3.10.7.tgz
tar -xf Python-3.10.7.tgz</pre></td></tr></table></pre>
</div></li><li style=""><u><b>La compilation</b></u><br />
<br />
<u><font color="#0000FF">Se placer dans le répertoire du téléchargement</font></u>:<br />
<br />
<br />
<u>Préparer le travail</u>:<br />
<div class="bbcode_container">
	<table width="100%" border="0" cellspacing="0" cellpadding="0"><tr>
	<td style="border: 0; padding: 0; text-align: left">Code  :</td>
	<td style="border: 0; padding: 0; text-align: right"><a href="#" onclick="return ano_selectionnerCode(this);">Sélectionner tout</a> -
	<a href="#" onclick="return ano_etendreCode(this);">Visualiser dans une fenêtre à part</a></td></tr></table>
	<pre class="bbcode_code" style="height:36px;">./configure --enable-optimizations --enable-shared</pre>
</div><i>la commande effectue notamment plusieurs vérifications pour s'assurer que toutes les dépendances nécessaires sont présentes et écrit un fichier Makefile qui contiendra les ordres de compilation.<br />
</i><br />
<br />
<u>Lancer la compilation</u>:<br />
<div class="bbcode_container">
	<table width="100%" border="0" cellspacing="0" cellpadding="0"><tr>
	<td style="border: 0; padding: 0; text-align: left">Code  :</td>
	<td style="border: 0; padding: 0; text-align: right"><a href="#" onclick="return ano_selectionnerCode(this);">Sélectionner tout</a> -
	<a href="#" onclick="return ano_etendreCode(this);">Visualiser dans une fenêtre à part</a></td></tr></table>
	<pre class="bbcode_code" style="height:36px;">make -j $(nproc)</pre>
</div><i>L'option -j permet d'utiliser plusieurs coeurs du processeur ce qui permet d'accélérer la compilation.<br />
La commande nproc donne le nombre de coeurs qui équipe votre machine. <br />
</i><br />
<br />
<u>On finalise</u>:<br />
<div class="bbcode_container">
	<table width="100%" border="0" cellspacing="0" cellpadding="0"><tr>
	<td style="border: 0; padding: 0; text-align: left">Code  :</td>
	<td style="border: 0; padding: 0; text-align: right"><a href="#" onclick="return ano_selectionnerCode(this);">Sélectionner tout</a> -
	<a href="#" onclick="return ano_etendreCode(this);">Visualiser dans une fenêtre à part</a></td></tr></table>
	<pre class="bbcode_code" style="height:36px;">sudo make altinstall</pre>
</div><i>altinstall installe le binaire python dans le répertoire /usr/local/bin/ , ce qui permet d'installer n'importe quelle version de python sans que cela interfère avec les versions de python installées par défaut.<br />
</i> <br /></li><li style=""><u><b>Le mot de la fin:</b></u><br />
Voilà, python3.10 est installé:<br />
<div class="bbcode_container">
	<table width="100%" border="0" cellspacing="0" cellpadding="0"><tr>
	<td style="border: 0; padding: 0; text-align: left">Code  :</td>
	<td style="border: 0; padding: 0; text-align: right"><a href="#" onclick="return ano_selectionnerCode(this);">Sélectionner tout</a> -
	<a href="#" onclick="return ano_etendreCode(this);">Visualiser dans une fenêtre à part</a></td></tr></table>
	<pre class="bbcode_code" style="height:72px;"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="26"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br /></div></td><td valign="top"><pre style="margin: 0">&gt;python3.10 -V
&gt;Python 3.10.7
&gt;</pre></td></tr></table></pre>
</div>:zoubi:<br />
<br />
Vous devez l'utiliser dans un environnement virtuel afin de pouvoir installer toutes les dépendances(bibliothèque python) nécessaires à votre projet sans que cela interfère avec d'autres versions qui seraient présentes sur votre système. Voir: <a href="https://docs.python.org/fr/3/tutorial/venv.html" target="_blank">https://docs.python.org/fr/3/tutorial/venv.html</a></li></ol></blockquote>

]]></content:encoded>
			<dc:creator>MPython Alaplancha</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/blogs/1443512-mpython-alaplancha/b10387/compilation-d-version-python3-x-debian-ubuntu/</guid>
		</item>
		<item>
			<title>Le bonheur d’être amateur!</title>
			<link>https://www.developpez.net/forums/blogs/1443512-mpython-alaplancha/b10270/bonheur-d-etre-amateur/</link>
			<pubDate>Sat, 01 Jan 2022 07:56:22 GMT</pubDate>
			<description>L’amateur (du latin amator,...</description>
			<content:encoded><![CDATA[<blockquote class="blogcontent restore">L’amateur (du latin amator, celui qui aime) est Homme chanceux. <br />
Il est libre, il agit sans contrainte.<br />
Il n’a pas à se vendre, il n’a aucun compte à rendre, aucun délai à respecter, aucun client ou chef de projet à satisfaire. <br />
Il développe les applications qu’il veut, comme il le veut. <br />
Il choisit ses outils, se forme au gré de sa fantaisie. <br />
Sa démarche est pure, sans autres but que son plaisir!<br />
<br />
Qu’il est bon d’être amateur!<br />
Professionnels, pouvez-vous en dire autant? :zoubi:</blockquote>

]]></content:encoded>
			<dc:creator>MPython Alaplancha</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/blogs/1443512-mpython-alaplancha/b10270/bonheur-d-etre-amateur/</guid>
		</item>
	</channel>
</rss>
