• [^] # Pour un débutant, plutôt Python

    Posté par . En réponse au message Conseil pour créer un frontend. Évalué à 4.

    Pour un débutant, je conseillerais plutôt Python que Perl (plutôt qu'autre chose aussi, par ailleurs).
    Pour ce type de développement aussi (pour l'administration système, je reste convaincu que Perl surclasse tout... pour peu qu'on le maîtrise suffisamment).

    Bien que Perl et Python soient bons à peu près pour les mêmes choses et partagent leurs caractéristiques de base (ce sont tous deux des langages interprétés de haut niveau, supportant la POO comme les expressions rationnelles...), leurs optiques sont radicalement opposées :
    La devise de Perl est "TIMTOWDY" ("There is more than one way to do it", en français : "il y a plus d'une façon de le faire"), c'est -à-dire qu'on trouve toujours des manières encore plus efficaces de faire ce qu'on faisait avant (et par ailleurs déjà bien plus efficacement qu'en C, par exemple). Si l'on n'a plus rien du tout à apprendre sur Perl et ce qu'on peut en faire, c'est qu'on est Larry Wall. Et encore...
    Python, au contraire, est conçu explicitement comme un langage orthogonal, c'est-à-dire que les concepts ne sont pas redondants et qu'on peut donc espérer maîtriser assez rapidement l'ensemble du langage.

    Par ailleurs, on peut trouver de très bonnes docs en français sur Python :
    - pour débutant : http://www.ulg.ac.be/cifen/inforef/swi/python.htm ,
    - pour programmeurs expérimentés : http://fr.diveintopython.org/ .
    Pour Perl, je ne suis pas trop au courant de ce qu'on trouve en ligne (j'ai le Perl CD Bookshelf d'O'Reilly, donc pas trop besoin de chercher autre chose). Par contre, le hors série spécial Perl qu'a sorti GNU/Linux Magazine France est excellent : il donne un très bon aperçu global du langage et de ses possibilités tout en donnant assez de détails pour pouvoir commencer à programmer en Perl. En fait, son article de base est disponible sur le site de l'auteur : http://sylvain.lhullier.org/publications/perl.html , et on peut d'ailleurs trouver beaucoup d'articles intéressants à partir du site des "Mongueurs de Perl", le groupe dont il fait partie et qui est à l'origine de la majorité des articles Perl publiés dans LinuxMag : http://articles.mongueurs.net/ .

    Au niveau du toolkit, il ne faut pas oublier Tk, qui a l'avantage de son inconvénient : il est vieux (aussi bien au niveau de l'aspect qu'au niveau des possibilités peut-être un peu plus limitées de ses windgets), mais stable (ça veut dire que ton appli n'ira pas à la poubelle parce que tu auras autre chose à faire que de l'adapter à GTK 4 ou Qt 12... d'un autre côté, Python évolue aussi, même si c'est probablement plus en douceur) et porté sur beaucoup de plateformes.

    Sinon, GTK et Qt sont des toolkits modernes. GTK est un peu le standard de fait actuellement dans le logiciel libre (c'est donc intéressant en soi de l'apprendre, rien que pour pouvoir éventuellement modifier à son goût des projets existants, voire y contribuer), Qt est excellent pour programmer en C++ (il est nativement en objet en C++), mais ça ne présage peut-être pas de la qualité de son binding Python (que je ne connais pas du tout).

    wxWindows est plus ancien, moins répandu, mais supporte beaucoup de plateformes, et depuis un certain temps (donc certainement de manière stable).

    « Le fascisme c’est la gangrène, à Washington comme en Russie. » — adapté de Renaud, Hexagone