> à l'origine, GNOME choisit Gtk parce qu'il ne veut pas de C++ et que le C est suffisant pour faire de l'objet
À l'origine, c'est surtout que Qt était pas libre d'où la recherche d'une alternative libre (Gtk+).
Quant au choix de C, c'est surtout dû à la facilité d'écrire des bindings et de permettre d'écrire des applications GNOME dans une variété de langages. Là où KDE estimait que C++ se suffit à lui-même, GNOME a préféré laisser le choix du langage.
GNOME n'est pas écrit entièrement en C, seul le coeur l'est, les applications GNOME sont écrites dans une variété de langage: C++, Python, Javascript, C# etc ...
Pour Vala, l'intérêt c'est d'avoir un langage de haut niveau simple (pas comme C++), performant (pas comme C#, Java) et qui soit 100% interopérable avec le C.
Avec l'arrivée de GI (GObject Introspection), l'écriture de bindings sera encore plus facile (voire s'en passer).
C/GObject était et reste encore un choix pertinent, si tu veux des plantages de GNOME, c'est du côté de Bonobo et des libgnome* qu'il faut voir.
De son côté, KDE pousse un peu plus les bindings (grâce à smoke entre autre), pour autant, je vais pas dire non plus que le choix de C++ est un échec de KDE. Faut replacer chaque chose dans son contexte.
[^] # Re: API ?
Posté par GeneralZod . En réponse au journal Pulseaudio vs JACK. Évalué à 10.
À l'origine, c'est surtout que Qt était pas libre d'où la recherche d'une alternative libre (Gtk+).
Quant au choix de C, c'est surtout dû à la facilité d'écrire des bindings et de permettre d'écrire des applications GNOME dans une variété de langages. Là où KDE estimait que C++ se suffit à lui-même, GNOME a préféré laisser le choix du langage.
GNOME n'est pas écrit entièrement en C, seul le coeur l'est, les applications GNOME sont écrites dans une variété de langage: C++, Python, Javascript, C# etc ...
Pour Vala, l'intérêt c'est d'avoir un langage de haut niveau simple (pas comme C++), performant (pas comme C#, Java) et qui soit 100% interopérable avec le C.
Avec l'arrivée de GI (GObject Introspection), l'écriture de bindings sera encore plus facile (voire s'en passer).
C/GObject était et reste encore un choix pertinent, si tu veux des plantages de GNOME, c'est du côté de Bonobo et des libgnome* qu'il faut voir.
De son côté, KDE pousse un peu plus les bindings (grâce à smoke entre autre), pour autant, je vais pas dire non plus que le choix de C++ est un échec de KDE. Faut replacer chaque chose dans son contexte.