Comments on: Quand ne pas utiliser Python ? http://sametmax.com/quand-ne-pas-utiliser-python/ Du code, du cul Sat, 07 Nov 2015 11:08:18 +0000 hourly 1 http://wordpress.org/?v=4.1 By: Ummon http://sametmax.com/quand-ne-pas-utiliser-python/#comment-153148 Mon, 22 Dec 2014 22:55:47 +0000 http://sametmax.com/?p=12867#comment-153148 @Ludovic

Ne fait pas de ton cas une généralité.

PHP n’est même pas un langage, c’est une erreur à oublier.

@Sam

Les sites que tu cites ne sont pas codé entièrement en Python (évidemment), il est beaucoup utilisé comme “glue language”. Je me suis mal exprimé, quand je parlais de “logiciels lourds” c’était pas analogie à “client lourd”. Par exemple un logiciel comme Blender ne sera pas codé en Python mais l’utilisera comme langage de script (ce qu’il est en définitive).

Des langages comme F# ou Scala, certes beaucoup plus jeunes que Python, n’ont pratiquement que des avantages par rapport à lui : typage statique à inférence, un ordre de grandeur plus rapide, s’utilise à la fois sous la forme de scripts et/ou de binaire packagé, etc… Évidemment, comme partout, le domaine du logiciel a énormément d’inertie.

]]>
By: Ludovic Gasc http://sametmax.com/quand-ne-pas-utiliser-python/#comment-153141 Mon, 22 Dec 2014 19:06:11 +0000 http://sametmax.com/?p=12867#comment-153141 @umon : franchement, c’est du préjugé à 2 balles de dire ce genre de choses.

J’ai codé des démons avec + de lignes de code qui sont à la fois maintenable et qui tiennent un peu mieux la charge qu’un Apache + PHP (Réécriture d’applications Web existantes)

]]>
By: Sam http://sametmax.com/quand-ne-pas-utiliser-python/#comment-153133 Mon, 22 Dec 2014 14:46:58 +0000 http://sametmax.com/?p=12867#comment-153133 Youtube, Pinterest, Disqus, Instagram sont tous massivement codés en Python. Je pense qu’ils font plus de 5000 lignes de code.

En fait, la nature même de Python le rend excellent pour de gros projets :

  • namespacing
  • typage fort
  • forte lisibilité
  • générateurs
  • implémentation alternatives
  • bindings C
]]>
By: Ummon http://sametmax.com/quand-ne-pas-utiliser-python/#comment-153131 Mon, 22 Dec 2014 13:15:23 +0000 http://sametmax.com/?p=12867#comment-153131 J’aurai envie de dire qu’il ne faut pas utiliser Python pour des logiciels lourds qui demande du code robuste et de bonnes performances (oui, c’est peu précis, je sais). J’ai de la peine à voir un logiciel lourd en Python de plus de 5’000 lignes de code. Je dis pas que c’est impossible mais ce n’est certainement pas adapté.

]]>
By: Sam http://sametmax.com/quand-ne-pas-utiliser-python/#comment-153082 Sun, 21 Dec 2014 19:17:34 +0000 http://sametmax.com/?p=12867#comment-153082

Des technologies plus productives existent pour ce domaine : c’est le cas de l’embarqué,

C’est un cas typique. Pareil pour la prog temps réel.

]]>
By: Si Señor http://sametmax.com/quand-ne-pas-utiliser-python/#comment-153074 Sun, 21 Dec 2014 14:31:27 +0000 http://sametmax.com/?p=12867#comment-153074 J’ajouterai aussi le cas de figure: “je travaille trop bas niveau pour qu’il soit confortable de bosser avec un langage qui n’est pas prévu pour être compilé en code natif (du moins en première intention), ni pour s’exécuter sans dépendance.”

]]>
By: Sam http://sametmax.com/quand-ne-pas-utiliser-python/#comment-152957 Fri, 19 Dec 2014 13:13:17 +0000 http://sametmax.com/?p=12867#comment-152957

Quelle est la différence entre HOPE et Cython ?

Deux projets qui ont un but similaires mais passent pas des étapes différentes.

HOPE fait de la compilation en C++ à la volée sur des portions de code au premier moment de l’éxécution qu’il stocke dans un dossier .hope. A la deuxième exécution (par exemple si la fonction est appelée une seconde fois), ça réutilise ce code.

Cython compile du code Cython, un superset de Python optionnellement typé. Ca pond un exécutable compilé à partir d’un programme Python complet.

Dans l’ hypothèse d’un projet expérimental à la Eve Online en ultra méga light :

Comment travailler avec un champion du C/C++/Lua qui ne connait rien au Python

quand on ne connait soi-même que du Python ?

Il va falloir vous y mettre. Pour le codeur C, se mettre à Python c’est facile. Tu le brief en 3 jours pour qu’il écrire pas du Python comme on écrit du C, et il est good. Dans l’autre sens, tu vas en chier. Mais bon, ça fera de toi un meilleur dev.

Dans tous les cas, il faut que vous compreniez un peu des deux.

Quelles pistes sont explorées pour profiter des avantages du Python et des C-oïdes ?

Cython est le meilleur choix car il permet facilement d’appeler du code C depuis Python et inversement. Généralement tu voudras laisser les parties critiques (moteur graphique, data crunching) à ton pote Ciste, et toi tu t’occupera t’appeler son code pour de la logique de haut niveau (scripting de scénario, AI, calculs ponctuels, etc).

Une alternative et d’utiliser WAMP qui permettra au code d’appeler via RPC du code Python vers C++ et inversement via le serveur WAMP. Tes codes seront donc des services qui s’appelleront les un les autres. Pour la partie jeu en ligne, c’est un bon compromis.

]]>
By: buffalo974 http://sametmax.com/quand-ne-pas-utiliser-python/#comment-152931 Thu, 18 Dec 2014 21:37:21 +0000 http://sametmax.com/?p=12867#comment-152931 Quelle est la différence entre HOPE et Cython ?

Dans l’ hypothèse d’un projet expérimental à la Eve Online en ultra méga light :

Comment travailler avec un champion du C/C++/Lua qui ne connait rien au Python

quand on ne connait soi-même que du Python ?

Quelles pistes sont explorées pour profiter des avantages du Python et des C-oïdes ?

]]>
By: Petite coquille (ne pas publier) http://sametmax.com/quand-ne-pas-utiliser-python/#comment-152924 Thu, 18 Dec 2014 19:45:33 +0000 http://sametmax.com/?p=12867#comment-152924 Hello,

une petite coquille ici : J’ai mesuré mes besoins objectivement, et AI évalué (j’ai)

de rien ^^

Ceci dit, bon blog, merci :)

]]>
By: kontre http://sametmax.com/quand-ne-pas-utiliser-python/#comment-152806 Tue, 16 Dec 2014 21:59:53 +0000 http://sametmax.com/?p=12867#comment-152806 @tony: tiens, jamais entendu parler de celui-là. Actuellement point de vue jit dans le milieu scientifique c’est plutôt Numba qui est connu (mais il est ultra chiant à installer en dehors d’Anaconda). J’ai testé Numba, mais il n’a jamais fonctionné sur mes exemples réels, comme pas mal d’autres lib du genre. Dommage…

]]>