Le Python est-il bien reconnu dans les entreprises ? - Python - Programmation
Marsh Posté le 11-01-2004 à 13:41:10
On se sert pas mal de python comme outil (scripts pour clearcase, modifs massives de code, génération de doc).
Par contre c'est interne à l'équipe. Le choix de python s'est fait parce que différentes personnes avaient déjà fait des outils avec.
Marsh Posté le 11-01-2004 à 13:45:29
bah google et la nasa l'utilisent à fortes doses. de toutes façons t'a rien à perdre. même si dans ta boîte on te demande de programmer en trucmuche, y a toujours des kilomètres de truc à faire en python : c'est bien simple tu peux en foutre partout, il se débrouille dans tous les domaines et beaucoup de supers outils sont en python: pré-processeur, successeur de make, documentation de code, etc et et et extension/embarqué dans d'autre langage
Marsh Posté le 11-01-2004 à 14:32:59
Python est pas mal utilisé pour le prototypage d'applications car il a l'avantage de permettre un développement rapide et ainsi de ne pas investir trop d'argent dans les phases préliminaires des projets. Il est aussi beaucoup utilisé pour les test unitaires.
Python est de plus en plus utilisé et pourrait peut être percer pour de bon dans les années à venir. Sinon il est vrai que la syntaxe est trés agréable à lire à côté du Java par exemple, on dirait presque du "langage naturel" à côté de ses conccurents
Marsh Posté le 11-01-2004 à 21:32:40
Salut Rasthor,
Ne connaissant pas bien Python, tout ce que je peux dire, c'est qu'il était massivement utilisé chez Nortel pour créer des outils de développement et de gestion de configuration (une surcouche de Clearcase, en fait).
Ca a l'air vraiment pas mal pour ce genre d'utilisations. En fait, presque tout ce qu'on fait en Perl semble mieux foutu en Python.
Marsh Posté le 11-01-2004 à 22:42:34
Ca sonnerait presque la mort du perl ce python. Faudra en reparler dans quelques années...
Marsh Posté le 12-01-2004 à 10:06:42
Webman a écrit : Python est pas mal utilisé pour le prototypage d'applications car il a l'avantage de permettre un développement rapide et ainsi de ne pas investir trop d'argent dans les phases préliminaires des projets. Il est aussi beaucoup utilisé pour les test unitaires. |
+1
Dans ma boite Python est utilisé en recherche/proto/test, eventuellement en admin (mais bon ca je peux pas dire c'est pas moi qui m'en occupe).
Par contre en développement industriel passe ton chemin c'est C++, C# ou Java
Bref Python est un plus sur un CV, c'est tres pratique dans la vie de tous les jours, mais ne compte pas etre recruté pour cette seule compétence (sauf s'il s'agit de faire du devel web CGI Python bien sur )
Le problème de Python est qu'a l'heure actuelle il a encore une image trop universitaire...
Sinon j'oubliais, Python est aussi souvent utilisé comme composant dans une application pour la scripter (Python ou Jython en Java).
EDIT: Il sert aussi de glue pour lier des composants hétérogènes (libs en C/C++, appli externes, code distribué, etc...)
Marsh Posté le 15-01-2004 à 10:36:38
Chez nous, on utilise Python pour piloter nos terminaux (une sorte d'automate programmable) via le port serie ou un liaison TCP/IP. On l'utilise aussi dans un cadre informatique industriel.
Dans mon projet precedent, il a servi a developper les outils de test (demaine: programmation systeme sous linux).
Marsh Posté le 15-01-2004 à 10:43:32
il aussi pas mal utilisé en modelisation graphique pour des appli medicale, bioinformatique, ect...
Marsh Posté le 16-01-2004 à 02:18:01
Moi je bosse sur un projet principalement en Python, avec une partie C++ pour les calculs (qui ferait avoir une crise cardiaque à Taz). C'est dans un but de recherhe/tests/prototypage, avec une portabilité aisée.
On utilise entre autre VTK et wxWindows, et c'est bien plus agréable en Python qu'en C++. A terme, tout sera fait en C++.
Marsh Posté le 16-01-2004 à 09:52:24
uriel a écrit : il aussi pas mal utilisé en modelisation graphique pour des appli medicale, bioinformatique, ect... |
Avec OpenGL j'imagine. Au fait, l'OpenGL est bien integre dans python ?
Marsh Posté le 17-01-2004 à 17:17:03
HelloWorld a écrit : A terme, tout sera fait en C++. |
T'en es sur? Souvent on part sur des outils de scripts sous couvert de faire du prototypage, et finalement on le garde pasque ca couterait trop cher pour un gain nul de tout refaire en C++ ou autre, surtout quand les calculs et autres trucs critiques sont deja fait en C++ comme ca semble etre le cas chez toi.
Franchement je trouve ca dommage cette mauvaise image que trainent les languages interprétés, mais je suis certain que ca va changer. Contrairement à Java ou autre, ces langages ne pretendent pas pouvoir tout faire tous seuls: ce sotn souvent des glues, et ils permettent toujours d'utiliser des libs dans d'autre langage. Concevoir l'interface utilisateur (GUI + logique, etc...) en script et les gros calculs en C, c'est un luxe que java ne peut par exemple pas se payer...
Alors vive Python, Perl, Ruby, et tous les langages de scripts!!! (et surtout Perl, na)
Marsh Posté le 17-01-2004 à 19:00:39
pospos a écrit : |
Bah quand le logiciel doit etre industrialisé et que ton client attends du C++ t'as pas trop le choix (par exemple, car il peut y a voir d'autres raisons encore).
pospos a écrit : |
Et JNI c'est quoi alors ?
pospos a écrit : |
Marsh Posté le 17-01-2004 à 19:04:52
ReplyMarsh Posté le 17-01-2004 à 19:58:36
pospos a écrit : |
Absolument. Je suis certains que ce genre d'utilisations va se développer à l'avenir. Cela permet de développer des systèmes complexes beaucoup plus rapidement qu'en langage de bas niveau.
Quand les programmeurs remiseront leur coté frimeur ("moi je ne fais que du C/C++/asm, je suis un vrai programmeur" ) au placard, ils seront dix fois plus productifs.
Et comme seuls 10% du code réalisent 90% du travail, on n'écrira plus que ces 10% là en C/C++, et on évitera bien des bugs et du code illisible dans les 90% du code restant.
L'expérience montre que dans la quasi totalité des cas, un code écrit dans un langage de haut niveau est plus maintenable et beaucoup plus souple que s'il était écrit en langage de bas niveau.
Souvenons-nous de ce que dit Knuth : "Premature optimisation is the root of all evil."
Marsh Posté le 17-01-2004 à 20:12:52
taz a écrit : une abberation |
Super intervention
Marsh Posté le 18-01-2004 à 04:21:20
pospos a écrit : Concevoir l'interface utilisateur (GUI + logique, etc...) en script et les gros calculs en C, c'est un luxe que java ne peut par exemple pas se payer... |
<hs>bien sur que si</hs>
Marsh Posté le 19-01-2004 à 14:33:39
taz a écrit : une abberation |
Ca se voit que tu n'as pas eu besoin de l'utiliser massivement.
Dès lors qu'on est en environnement de développement hétérogène pour les plate-formes et les langages, c'est à la fois très souple et très puissant. Et tout à fait acceptable côté efficacité (bien sûr il faut éviter de faire 1000 appels natifs par seconde...)
Marsh Posté le 21-01-2004 à 17:51:28
Pyhton sert également beaucoup pour les scripts CGI, il est d'ailleurs en expansion dans ce domaine, de plus la syntaxe est plus lisisble à mon avis que le roi du CGI j'ai nommé Perl.
Marsh Posté le 21-01-2004 à 21:11:15
CGI et surtout FastCGI! (largement plus rapide que mod_php)
"plus lisisble à mon avis que le roi du CGI j'ai nommé Perl"
Bon je voudrais pas faire de HS, mais comme toujours la syntaxe de Perl parait barbare à ceux qui ne la connaisse pas, et ca semble normal. Comment juger une syntaxe si on ne la connait pas?? A l'oeil? au nombre de '$' ? La syntaxe de Perl est tout à fait logique, et se lit tres bien kand on la connait (comme tout langage!). Un script Python est peut etre plus beau à regarder, mais si je ne connais pas la syntaxe ca ne m'avencera pas beaucoup (et dans la vie ya meme des trucs encore plus que des script, donc l'aspect purement esthetique ne va pas bien loin...)
Marsh Posté le 21-01-2004 à 22:57:07
pospos a écrit : CGI et surtout FastCGI! (largement plus rapide que mod_php) |
Comment sais-tu qu'il ne connaît pas la syntaxe perl?
Marsh Posté le 21-01-2004 à 23:20:23
C'est une supposition effectivement...
mais le fait est que les personnes que j'ai entendu meugler contre la syntaxe perl (et le "$ partout!" ) ne la connaissait pas.
Je ne dis pas que Perl est parfait, il a des defaut mais ca syntaxe n'en est pas un à mon avis.
bon la ca va virer HS...
Marsh Posté le 21-01-2004 à 23:23:47
bouarf ouais mais de là à dire que du python est pas plus lisible
pour peu que tu connaisse un peu l'anglais et que t'aies un cerveau, tu piges en gros ce que fais un source python, java, ... alors qu'un script perl .. justement, il *faut* connaitre la syntaxe , qui semble rebarbative et complexe, alors que les syntaxes des langages sus-cité sont simplissimes.
Marsh Posté le 21-01-2004 à 23:26:02
La logique d'une syntaxe ne la rend pas facile à comprendre. Je reste sur l'idée que la syntaxe Python est beaucoup plus simple à comprendre et à apprendre que la syntaxe Perl.
Bien sur, avec de l'experience, même brainfuck deviens lisible
Marsh Posté le 21-01-2004 à 23:28:08
Si si, c'est assez hideux. C'est évidemment inspiré des langages de script shell, donc perl est excusable, mais c'est hideux quand même : sans même parler des expressions régulières, le passage des paramètres de fonctions et les tableaux sont deux exemples de choses tordues en Perl. M'enfin il reste quand même bien pratique dans son domaine d'application principal.
Marsh Posté le 09-06-2004 à 23:29:49
Les gros calculs en C, et python pour tout le reste...
Et pour interfacer les deux, www.swig.org par exemple
Marsh Posté le 05-07-2004 à 20:27:51
salut, je viens de passer par hasard sur ce post et une réponse m'a intrigué, celle de Kristoph qui parlait de brainfuck. Au début je me suis demandé si c'était pas une blague (du style winfuck) mais j'ai cherché sur google et me voilà avec un bon language de dingue.
En bref ca me plairait bien d'essayer d'en faire un peu (juste pour le fun), j'ai cherché et trouvé des compilateurs c++, python, perl .. mais pas de version éxécutable, donc juste pour savoir s'il en existe car j'ai pas vraiment envie de me lancer dans la compilation d'un c++ pour pouvoir enfin m'amuser..
Sinon, je me suis à python ya quelques jours et c'est pas mal du tout, par exmple le compilateur qui corrige aussi les erreurs d'indentation, pas mal
Ce qui me plait c'est que c'est un peu comme perl (du style facile pour les requetes web ou tout ce qui est manipulation de fichiers). Bon j'ai toujours quelques galères du côté de zope mais ca devrait aller, en plus le tout allié à une petite base de données mckoi ou hsqldb ca devrait donner de bonnes petites applis embarquées.
En dernier petite question, est-ce qu'il est possible de sortir une version éxecutable (.exe) d'un code python, parceque j'ai pas encore trouvé d'infos sur ce sujet ..
Marsh Posté le 05-07-2004 à 21:40:43
Il n'est pas possible de compiler le Python en assembleur, mais il est possible de rassembler tous les modules utilisés ainsi que l'interpreteur dans un .exe avec py2exe
Marsh Posté le 06-07-2004 à 21:37:49
ok, j'ai trouvé, merci pour le py2ee.
et en ce qui concerne le compilateur de brainfuck, une idée ?
Marsh Posté le 04-10-2004 à 15:19:07
suffit de faire comme j'ai fait pendant mon CDD de 3mois cet été.
« Bon alors, vous avez le choix : ou je passe la semaine à faire le truc en C et ça sera difficile d'avoir quelque chose de vraiment sécurisé, ou bien je passe l'aprèm à faire ça en python et demain matin je commence les tests ? »
le plus marrant étant qu'en plus je devais reprendre des éléments C déjà existant (trucs réseaux) : comment je t'ai traduit le C avec un facteur de compression de 1 pour 15 !
Marsh Posté le 02-08-2005 à 20:26:26
Bonsoir,
Python est effectivement de plus en plus utilisé dans le domaine scientifique, souvent en remplacement de langage de traitement comme Pearl ou de prototypage de haut niveau comme MatLab.
En particulier Jython, la version sur base Java, constitue un superbe langage de script de haut niveau pour Java.
Nous avons nous-même développé un framework de modélisation/simulation dans le cadre du projet SPIS (http://www.spis.org) pour lAgence Spatiale Européenne (ESA), entièrement écrit en Jython et en Java. Avec SPIS, il est possible de manipuler des maillages 3D de plusieurs centaines de plusieurs milliers déléments sans problème, effectuer des simulations, visualiser les données, etc...
Avec une interface Java/JNI, il est aussi possible de piloter facilement une couche C/C++.
Nous avons développé Cassandra, un visualiseur scientifique open-source 3D en Java, basé sur la bibliothèque VTK de Kitware et qui inclut une nouvelle console Jython. Le wrapping Jython facilite le développement de filtres et la manipulation des objets VTK sans avoir à toucher au C++
Si vous voulez essayer lapproche Python/Java/VTK, Cassandra est accessible à ladresse suivante :
http://dev.artenum.com/projects/cassandra
ou sur:
http://www.artenum.com/cassandra
Globalement, la voie Jython/Java/C/C++ via différentes couches de wrapping est aujourd'hui une voie valide et opérationnelle.
A bientot.
Marsh Posté le 18-08-2005 à 01:04:14
Reply
Marsh Posté le 11-01-2004 à 12:27:45
Voila, mon premier post dans cet catégorie
Le C, le C++ et le Java ont les faveurs des entreprises il me semble.
Le Perl est aussi pas mal utilisé en bioinfo pour ses capacités de traitement de texte et de regexp.
Le PHP, avec MySQL est bien implanté dans les sites web.
Qu'en est-il du Python ? Est-il bien reconnu ou bien il n'est encore qu'à ses balbutiement ? Et dans ce cas, sera-t-il un jour au meme niveau de reconnaissance que C, Java, etc... ?
Vaut-il la peine pour quelqu'un qui veut se mettre sérieusement à la programmation de commencer par python ?
Pourra-t-il ensuite facilement migrer vers Java ?
J'ai deja essayé le Java, j'ai pas vraiment adhérer. Le perl est sympa, mais je me perd encore dans les %, $ et @... Et me semble un peu limiter niveau graphique et non-objet d'origine.
Alors je me disais que le python pourrait être sympathique à apprendre.