Programmation
Linux pour les programmeurs
Les outils disponibles
Pendant longtemps, les principaux utilisateurs de logiciels libres ont été les programmeurs, universitaires et autres chercheurs, si bien que de nombreux outils de programmation ont vu le jour, en fonction des besoins de chacun. Le meilleur exemple d’outil de développement dans les logiciels libres est le couple Emacs / gcc, développés à l’origine par Richard Stallman.
Emacs est un éditeur de texte qui offre de très nombreuses possibilités, car il est entièrement reprogrammable. Ainsi, certains utilisateurs chevronnés des systèmes Unix font tout avec Emacs : navigation sur le Web, email, programmation... Sans en arriver là, les modes standards d’Emacs permettent d’éditer des programmes avec mise en valeur de la syntaxe, et de lancer le compilateur dans une fenêtre. Pratiquement tous les langages connus sont supportés, et les erreurs de compilation sont analysées pour que le programmeur puisse en un clic retrouver la ligne erronnée. De même, le mode gdb permet à Emacs de lancer le débogueur GNU et complète ainsi l’environnement de développement. Emacs est certes rebutant pour les habitués de Windows, mais cet éditeur devient rapidement indispensable, car il n’a pas son égal pour éditer les codes sources.
Les projets KDE et Gnome d’environnements graphiques pour Linux ont apporté leurs environnements de développement, plus proches de ceux que l’on peut trouver sous Windows. Ainsi, Kdevelop, l’environnement de développement de KDE, est un logiciel complet de programmation "visuelle", avec de nombreux outils de conception d’interface et de génération automatique de code. Il permet notamment de créer des boîtes de dialogue avec la souris, en utilisant les widgets de la bibliothèque Qt. D’autre part, Kdevelop est résolument tourné vers le développement de logiciels libres : lorsqu’on crée un nouveau projet, il propose de générer automatiquement les fichiers standards d’un programme GPL (script autoconf, fichiers README, INSTALL et COPYING contenant la license GPL, etc.). Kdevelop met ainsi la programmation sous Linux à la portée des novices et fournit une interface très conviviale. Dans les dernières versions, il intègre également un débogueur graphique performant et permet le développement d’interfaces Gnome.
La bibliothèque graphique Gtk, qui est à Gnome ce que Qt est à KDE, dispose aussi de ses environnements de développement : le programme Glade permet l’édition visuelle des fenêtres et des boîtes de dialogue, et le logiciel VDKBuilder est un équivalent de Kdevelop adapté à Gtk.
Linux dispose donc d’une panoplie impressionnante d’outils de développement, du plus simple au plus évolué, permettant à chacun de trouver des outils de travail adaptés. Mieux encore, ces programmes étant tous des logiciels libres en constante évolution, il est possible de rejoindre les équipes de programmeurs qui les développent et d’apporter sa pierre à l’édifice !
La communauté des développeurs Linux
La philosophie du logiciel libre prône le partage et la coopération, si bien que les développeurs de ce type de programmes forment une véritable communauté, où l’entraide est de rigueur. Ainsi, chaque langage, chaque outil de programmation ou bibliothèque a sa liste de diffusion, sur laquelle les programmeurs expérimentés répondent aux questions posées. Si le ton des réponses est parfois condescendant lorsque la solution est dans la documentation, aucune question ne reste longtemps sans réponse, et bien souvent plusieurs développeurs présentent leur solution. Ces listes de diffusion sont également des "lieux" de rencontre où l’on peut discuter avec des gens qui travaillent sur le même type de projet, et échanger des idées, des techniques.
Un autre aspect stimulant pour les programmeurs dans le monde du logiciel libre est le grand nombre de projets en cours à tout moment. En effet, en plus des célèbres KDE ou Gnome décrits dans ces pages, de nombreux projets de développement sont menés par des groupes de programmeurs qui, le plus souvent, travaillent à distance et communiquent essentiellement par mail. Cette forme de télétravail entre personnes qui parfois ne se sont jamais vues, est un défi d’organisation intéressant à relever, et autrement plus stimulant que de développer son programme seul.
Pour en savoir plus sur la programmation sous Linux
Sans oublier un document essentiel : GNU coding standard, la référence pour qui veut développer dans l’esprit GNU.
Vous souhaitez reproduire cet article ?




