[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: developpement en C



On Fri, 24 Sep 2010 23:06:22 +0200
"rk" <rkdebian@numericable.fr> wrote:

> Bonjour,
> 
> Je connais déjà un peu le langage C et ce qui m?intéresse c?est la
> programmation orientée réseau.
> J'aimerai pour me perfectionner développer une application pour la
> messagerie instantanée en utilisant la librairie GTK et Qt, je ne sais pas
> encore.

Gtk (utilisé par Gnome) est un jeu de plusieurs libraries en C (dont
gtk, glib, gobject...), alors que Qt (utilisé par KDE) est un jeu de
plusieurs libraries en C++.

Pour installer les paquets utiles à ce genre de développement (qui
ressemble à empathy, que je ne connais pas) on décrouvre d'abord avec 

 % apt-cache search gnome chat     

quels sont les paquets qui y ressemblent, donc ici:

empathy - GNOME multi-protocol chat and call client
empathy-common - GNOME multi-protocol chat and call client (common
files) empathy-dbg - GNOME multi-protocol chat and call client (debug
symbols) nautilus-sendto-empathy - GNOME multi-protocol chat and call
client (nautilus-sendto plugin) xchat-gnome - a new frontend to the
popular X-Chat IRC client xchat-gnome-common - a new frontend to the
popular X-Chat IRC client ayttm - Universal instant messaging client
ggz-gnome-client - GGZ Gaming Zone: core client for the GNOME desktop
gmfsk - MFSK, RTTY and other digital mode terminal for HF/amateur radio
gnome-do - Quickly perform actions on your desktop
xchat-gnome-indicator - XChat-GNOME Indicator Plugin

Ensuite on peut par exemple installer les dépendances pour les
construire par 

   aptitude build-dep empathy xchat-gnome

Concernant le développement d'une application chat en réseau, il est
essentiel de bien comprendre les appels systèmes de multiplexages d'E/S
comme select, pselect, poll. La page de man select_tut est utile à lire.

Ensuite, avec GTK, il faut bien comprendre la boucle d'événeemnts
GTK/Glib http://www.gtk.org/api/2.6/glib/glib-The-Main-Event-Loop.html
et les canaux
http://library.gnome.org/devel/glib/stable/glib-IO-Channels.html

Enfin, il existe plusieurs forums d'aide sur GTK, notamment
http://gtkforums.com/ avant d'y poser une question en anglais,
documentez vous un peu et indiquez y vos essais et vos lectures.

Par ailleurs, il existe d'autres langages, plus faciles à utiliser que
le C, et tout aussi efficaces. Par exemple Ocaml http://caml.inria.fr
qui est interfacé à GTK par LablGtk
http://www.math.nagoya-u.ac.jp/~garrigue/soft/olabl/lablgtk.html
l'inférence de type d'Ocaml rend la programmation beaucoup plus concise
(moins de ligne de code à écrire) et plus sûre (le compilateur trouve
les erreurs de typages).

Bon développement.
-- 
Basile STARYNKEVITCH         http://starynkevitch.net/Basile/
email: basile<at>starynkevitch<dot>net mobile: +33 6 8501 2359
8, rue de la Faiencerie, 92340 Bourg La Reine, France
*** opinions {are only mine, sont seulement les miennes} ***


Reply to: