#1 Le 01/05/2007, à 17:19
- Romagination
Débuter rapidement la prog pour linux
Bonjour, voilà je vais aller droit au but: je souhaite me mettre à développer un peu sous linux des trucs qui me tiendront à coeur, ou contribuer modestement à des projets qui m'intéressent alors j'en appelle aux habitués/chevronés pour me guider:
quels sont les langages les plus usités pour programmer une application graphique pour linux?
(pour l'interface ça sera plutôt en Qt si j'ai bien compris car je suis sous kde et j'aime bien mais si je veux contribuer à un projet en gtk je m'y mettrai volontiers)
Si qqn qui est sur un projet peut par ex me donner quelques liens vers du code que je puisse voir comment ça se présente, et puis comme ça je tatonnerai dans mon coin en customisant pour voir si je comprends bien comment ça marche.
Quels outils utiliser etc... En fait je suis totalement novice sur ce support mais j'ai déjà fait de la programmation notamment site web, je cherche surtout à savoir quels sont les outils à utiliser pour développer, quels langages sont les plus adaptés, des liens vers de bons tutos s'il y en a et puis un bon exemple à trifouiller. Après je vais potasser, faire des essais pour y aller petit à petit, je reste modeste.
Merci d'avance pour tout, j'imagine que vous êtes tous passé par là où je suis, je sais qu'en faisant ça je m'épargne de farfouiller partout sur le net, mais je vous épargne aussi sans doute quelques questions de newbie dans le futur
Hors ligne
#2 Le 01/05/2007, à 17:43
- trucutu
Re : Débuter rapidement la prog pour linux
Ya un truc qui va falloir que je teste :
apt-get source xxx
Pour obtenir les sources de xxx.
Après, à toi de te fixer sur des applis qui t'intéressent...
Pour les langages, idem. Tout est possible, cela dépendra de l'appli que tu considèreras
La chanson du dimanche - "La pêche !"
PC acheté chez Novatux : entièrement satisfait.
Faire des recherches solidaires !
Hors ligne
#3 Le 02/05/2007, à 09:22
- Desintegr
Re : Débuter rapidement la prog pour linux
Si tu veux contribuer au projet KDE, il va falloir apprendre le langage C++ et l'utilisation de la bibliothèque Qt, ainsi que la bibliothèque KDE.
KDE 3 :
- http://doc.trolltech.com/3.3
- http://api.kde.org/3.5-api/kdelibs-apidocs/
KDE 4 :
- http://doc.trolltech.com/4.2/
- http://api.kde.org/cvs-api/kdelibs-apidocs/
Il faut également avoir une bonne maitrise de l'Anglais technique car toutes les bonnes documentations sont écrites en Anglais.
Pour commencer avec Qt, tu peux essayer de faire les tutoriaux : http://doc.trolltech.com/4.2/examples.html mais il faut déjà avoir des connaissances en C++.
Si tu n'as jamais fait de programmation objet auparavant, il vaudra peut-être mieux se tourner vers un langage plus simple que le C++ comme Python ou Ruby
Hoc Volo, Sic Jubeo !
Mon wiki : http://desintegr.free.fr
Hors ligne
#4 Le 02/05/2007, à 12:16
- Romagination
Re : Débuter rapidement la prog pour linux
Merci beaucoup pour les liens et tes remarques, c'est exactement ce que je cherchais, sinon j'ai déjà fait un peu de prog objet donc pas réticence à me lancer dans le C++. Pour l'anglais ça va aussi.
Hors ligne
#5 Le 03/05/2007, à 06:58
- Romagination
Re : Débuter rapidement la prog pour linux
Au passage, y'a-t-il des paquets à installer utiles qui ne seraient pas chargés par défault quand on installe kubuntu?
Pour l'instant pour faire tourner un premier programme basique du tuto j'ai installé g++ et des paquets de développement pour Qt4.
Hors ligne
#6 Le 04/05/2007, à 20:47
- alex2423
Re : Débuter rapidement la prog pour linux
Es tu sur de vouloir de t'impliquer dans un projet aussi lourd. Moi si j'etais à ta place et si tu aime KDE, ca serait de t'investir sur des projets plus petit. La communication sera plus simple et à mon humble avis ca sera plus simple de comprendre le fonctionnement di soft.
Je pense en particulier à Kontact, kamorok, amule, kftp.....
Hors ligne
#7 Le 04/05/2007, à 20:52
- Sir Na Kraïou
Re : Débuter rapidement la prog pour linux
Franchement, si on est motivé, le C et le C++, ça s'ingère bien. Genre, tu commences avec le site du zér0, il y a un plutôt bon tuto.
Descendant de Charlemagne et de LUCA.
Bleu, en l'hommage d'un truc bleu. :'(
C'est pas du bleu.
C'est pas le lac de Genève, c'est le Lac Léman.
Hors ligne
#8 Le 30/01/2008, à 02:03
- kayzra
Re : Débuter rapidement la prog pour linux
Bonjour, j'ai appris récemment que l'on pouvait utiliser la bibliothèque Qt en Java avec Qtjambi, je voulais savoir si il été possible de développer des applis pour kde en java avec cette librairie et si la bibliothèque KDE pouvais être utilisée même en partie en langage Java?:rolleyes:
#9 Le 30/01/2008, à 10:18
- Aurel34
Re : Débuter rapidement la prog pour linux
si tu n'es pas rebuté par l'anglais et que tu veux apprendre le C++, je te conseille le bouquin Accelerated C++ d'A. Koenig. C'est un des rares bouquin qui te lance dans le "vrai" C++ dès le début (pas de phase "C++ simplifié à la C") et ça t'empèchera de prendre de mauvaises habitudes (ou alors tu apprends VRAIMENT le C puis VRAIMENT le C++, mais pas un mix des deux...).
Je ne lui connaà®t pas d'équivalent en français par contre.
Sinon au niveau des outils, pour de la prog. sous linux:
- installe un IDE (KDevelop, Eclipse CDT) ou apprend un éditeur (Emacs, Vim);
- apprend au moins make dans un premier temps, puis autotools et cmake;
- apprend à débugguer: regarde du cà´té de DDD et Kcachegrind, et des libs de débuggage mémoire(efence/DUMA/Dmalloc... les fonctions de la glib etc.). Vraiment apprendre à débugguer prend pasmal de temps, mais t'en gagneras plus tard et ça t'éviteras de polluer ton code avec des printf partout
- si tu veux apprendre Qt (ou GTK/Gnome), je plussoie Desintegr: rien ne vaut les docs officielles
Gnome: http://library.gnome.org/devel/references
QT4: http://doc.trolltech.com/4.3/tutorial.html
enfin, citons le livre open-source http://www.advancedlinuxprogramming.com/ (http://www.advancedlinuxprogramming-fr.org/doku.php) qui est vraiment sympa, mais plus orienté C.
sur ce, bon courage, dans les joies (et les prises de tête) du développement et du déploiement.
#10 Le 30/01/2008, à 11:53
- Karl_le_rouge
Re : Débuter rapidement la prog pour linux
Un bon bouquin de C++ en Français: le Delannoy. Il faut absolument éviter le bouquin de Stroustrup pour débuter à moins d'avoir besoin d'un cale-meuble.
En ligne, tu as "Thinking en C++" et le cours de Christian Casteyde.
Hors ligne
#11 Le 30/01/2008, à 17:22
- kayzra
Re : Débuter rapidement la prog pour linux
Si je suis vos réponse, il n'est pas possible de développer des applis pour KDE sans utiliser C/C++ pourtant il me semble qu'il existe des applis en Python qui comme java est portable et de haut niveau ?:/
#12 Le 30/01/2008, à 17:27
- kayzra
Re : Débuter rapidement la prog pour linux
En fait j'ai posté ma question à la suite de se topic datant d'avril 2007, j'aurais du poster dans un nouvelle discussion! désolé
#13 Le 31/01/2008, à 08:11
- birtzd
Re : Débuter rapidement la prog pour linux
J'ai commencé aussi y pas longtemps à programmer pour Linux. J'ai commencé par lire un peu sur le site http://siteduzero.com
J'ai commencé à traduire mon jeu http://dicteebranchee.com (qui fonctionne seulement sur Windows) mais j'en ai pour longtemps.
J'ai créer un site pour partager mon travail et essayé de trouver des gens intéressé au projet.
L'idée est de créer un engin de jeu 2D multi platform (linux, mac et windows). Ce n'est qu'un début mais comme je traduis d'un programme existant, cela devrait évoluer très rapidement. http://fxengine.ca
En gros, je programme en C++ et j'utilise des librairie multi platforme (SDL et fmod)
à‡a fonctionne bien sur Linux, j'ai pas encore testé sur Mac et Windows.
Hors ligne
#14 Le 31/01/2008, à 09:39
- Aurel34
Re : Débuter rapidement la prog pour linux
...il existe des applis en Python qui comme java est portable et de haut niveau ?:/
tu peux très bien coder en python ou Java sous Linux, et en effet c'est multi-plateforme. Java est très bien de ce cà´té, parce que bien distribué sous windows. Avec python, tu peux moins "parier" sur le fait que l'utilisateur ait la plateforme installée, mais tu peux toujours distribuer la dll (sous windows), et il existe d'aillerus des systèmes de package qui font ça très bien.
Sous python tu as pygame qui peux peut-être t'aider. Je crois d'ailleurs qu'un bouquin vient de sortir dessus (mais en anglais). Perso je ne connais pas, mais du moment que ça t'évite de réinventer la roue, ça ne peut être qu'un atout
#15 Le 31/01/2008, à 12:56
- kayzra
Re : Débuter rapidement la prog pour linux
:)merci pour vos réponses, en fait je souhaitais savoir si il était possible de développer une appli native kde en java en utilisant la bibliothèque Qt qui est depuis peux disponible en java grà¢ce à Qtjambi ( je sais qu'il existe des applis native KDE en Python)?
Escusez moi, il est vraie que mes questions n'étaient pas forcément posées très clairement!:rolleyes:
#16 Le 31/01/2008, à 13:10
- kayzra
Re : Débuter rapidement la prog pour linux
PS: je suis allergique au pointeur de C/C++ si j'avais appris un de ces 2 langages en 1er je m'y serais surement fais à la longue, mais voilà ça fais à peu prés 1 an que je programme en java (avec un peu de python hors GUI).Je souhaite maintenant développer une appli pour KDE et là , malgrés pas mal d'efforts pour apprendre C++ je rame ... et j'ai surtout tendance a écrire du C++ à la sauce java avec des résultat pas forcément rentable!!! Voilà pourquoi je cherche à savoir si je peu coder des applis sans passer par C++?
#17 Le 31/01/2008, à 16:04
- aleph
Re : Débuter rapidement la prog pour linux
http://www.riverbankcomputing.co.uk/pyqt/
http://www.jython.org/Project/index.html
#18 Le 31/01/2008, à 17:15
- Karl_le_rouge
Re : Débuter rapidement la prog pour linux
T'utilises encore les pointeurs en C++ ? Mec, faut utiliser les références et les itérateurs !
Hors ligne
#19 Le 31/01/2008, à 19:21
- kayzra
Re : Débuter rapidement la prog pour linux
Karl_le_rouge
Aujourd'hui à 17:15T'utilises encore les pointeurs en C++ ? Mec, faut utiliser les références et les itérateurs !
On peut réellement sans passer ???
... pourtant le "Delannoy : Apprendre le C++" n'arrete pas de revenir dessus comme si tout passé par leurs utilisation !
#20 Le 05/07/2008, à 12:52
- 16ar
Re : Débuter rapidement la prog pour linux
J'arrive apres la guerre, mais bon ... ^^
Oui les pointeurs sont encore necessaires pour pas mal de choses. Et Qt en a besoin souvent (on ne peut pas juste faire un & devant la variable pour chopper l'adresse, car derriere la variable va sortir du scope et son adresse deviendra invalide, bref ... erreur memoire)
C'est sur que le C++ n'est pas le langage le plus simple, de loin pas ! (syntaxes differentes pour a peu pres dire la meme chose (., ::, ->), etc) ) Néanmoins ca reste mon langage préféré pour les possibilité d'utiliser d'innombrables bibliotheques et d'avoir l'a main sur le programme complet.
Le gros probleme que je trouve au C++ hormis son langage trop complexe pour des gens sortant de java/c#, c'est la liberté (et donc la complexité) de la transformation des sources vers du binaire. Entre l'etape de preprocesseur, puis la compilation, puis le link, on a le moyen de faire pleins d'oubli/erreur que ca soit dans le code (preprocesseur, compilation) et dans le parametrage du projet (preprocesseur, compilation, link). Du coup, on passe plus de temps a parametrer le projet qu'a vraiment coder quand on n'a pas compris toutes les notions du C++.
Pour la question : peut on faire des applis KDE en java. Non je ne pense pas, ou alors faudra attendre un binding/wrapper pour KDE en java. Comme le binding/wrapper qt pour java existe avec QtJambi.
Comme dit, KDE, a la base, c'est une version plus poussée de Qt. Par exemple, qt, quand il va ouvrir un fichier, il va l'ouvrir sur le filesystem. (je simplifie au max, on pourrait passer par des streams, etc). De ce que je pense de KDE, c'est qu"un fichier pour etre ouvert a partir du reseau via ssh, http, ou autre. Ca permet d'eviter toute la programmation supplementaire a faire en Qt pour gérer cela. En gros, KDE serait une super version de Qt, proposant des fonctionnalités plus avancées (et d'autre plus integré au bureau tout simplement).
Désolé pour le paté et pour le retard ...
Hors ligne
#21 Le 05/07/2008, à 12:54
- 16ar
Re : Débuter rapidement la prog pour linux
Bon, a priori, je réponds de la merde : http://techbase.kde.org/Development/Languages/Java
Un binding java pour KDE est en cours a priori ^^
Hors ligne
#22 Le 05/07/2008, à 14:46
- Luc Hermitte
Re : Débuter rapidement la prog pour linux
Karl_le_rouge
Aujourd'hui à 17:15T'utilises encore les pointeurs en C++ ? Mec, faut utiliser les références et les itérateurs !
On peut réellement sans passer ???
... pourtant le "Delannoy : Apprendre le C++" n'arrete pas de revenir dessus comme si tout passé par leurs utilisation !
Ou un des pourquoi ce bouquin est régulièrement critiqué pas ceux qui connaissent le langage...
Sinon, ce ne sont pas que les références qui font disparaitre les pointeurs (, les itérateurs, c'est encore autre chose), ce sont tous les types RAII qui les masquent. À commencer par les vecteurs pour les tableaux, std::string pour les chaines, et boost::shared_ptr<> pour les pointeurs.
Avec cela, tu te retrouveras dans une situation proche du java, mais sans avoir à écrire un seul finally, tout en ayant 0 fuites de ressources, dont la mémoire.
PS: Il y a 0 pointeurs dans le bouquin d'initiation à la programmation via de le C++ de Francis Glassborrow (pas de classe, ni de templates) (il risque de falloir beaucoup d'huile de coude pour profiter, ailleurs que sous windows, de la bibliothèque qui accompagne le livre). Et AC++ ne montre pas les pointeurs avant la moitié du livre.
#23 Le 05/07/2008, à 15:21
- telliam
Re : Débuter rapidement la prog pour linux
Pour moi apprendre le C++ sans connaitre les pointeurs est une aberration...
même si le programmeur n'utilise que des références dans son code, il est important de connaitre cette notion..
"- Un intellectuel assis va moins loin qu'un con qui marche."
Maurice Biraud - Un Taxi pour Tobrouk
Michel Audiard
Hors ligne