<?xml version="1.0" encoding="utf-8"?>
<!-- -*- indent-tabs-mode: nil -*- -->
<chapter id="platform">
  <title>Vue d'ensemble de la plate-forme</title>

  <para>La plate-forme GNOME fournit un environnement de développement complet pour les applications graphiques et d'autres types de logiciels. À l'aide des technologies GNOME, vous pouvez créer des logiciels de grande qualité pour satisfaire et même dépasser les attentes de vos utilisateurs. Ce chapitre fournit un bref aperçu des composants abordés dans ce document.</para>

  <section id="platform-core">
    <title>Technologies fondamentales</title>

    <para>GNOME fournit de nombreuses bibliothèques pour construire des interfaces graphiques attractives. Il offre des bibliothèques pour l'affichage et la manipulation des contrôles usuels des interfaces utilisateur, pour la disposition et le rendu de texte de la plupart des systèmes d'écriture dans le monde, ainsi que pour le dessin de graphismes vectoriels complexes à l'écran. Les technologies graphiques de GNOME sont abordées dans <xref linkend="graphics"/>.</para>

    <para>La bibliothèque GIO, dans la GLib, combinée au système GVFS, fournit une abstraction du système de fichiers permettant aux utilisateurs d'utiliser des fichiers sur des serveurs distants tout comme d'utiliser le système de fichiers local. GIO fournit une API de haut niveau pour les opérations sur les fichiers, rendant le développement rapide et facile. L'utilisation de GIO permet à votre application de prendre en charge automatiquement les fichiers et les dossiers distants. GIO et GVFS sont abordés dans <xref linkend="gio"/>.</para>

    <para>GNOME fournit la bibliothèque et le démon GConf pour le stockage et la récupération des préférences utilisateur. GConf présente une interface de programmation simple, facilitant l'utilisation de préférences qui s'appliquent  immédiatement dans votre application. L'utilisation de GConf permet aussi aux administrateurs de fournir des paramètres d'application par défaut ou obligatoires pour leurs utilisateurs. GConf est abordé dans <xref linkend="gconf"/>.</para>

    <para>GNOME fournit une infrastructure d'internationalisation et d'accessibilité, permettant d'atteindre le plus grand nombre possible d'utilisateurs. La plupart des fonctions d'internationalisation et d'accessibilité sont intégrées dans la plate-forme, mais il faut être conscient de plusieurs questions en rapport avec ces technologies en développant des applications. L'internationalisation est abordée dans <xref linkend="i18n"/>. L'accessibilité est abordée dans <xref linkend="a11y"/>.</para>

    <para>GNOME est livré avec GStreamer, un environnement multimédia très puissant pour la création, l'édition et l'utilisation de contenus audio et vidéo. GStreamer est abordé dans <xref linkend="multimedia"/>.</para>

    <para>GNOME fournit aussi un environnement d'impression complet qui exploite CUPS quand c'est possible. L'environnement d'impression dans GNOME permet de présenter une interface cohérente pour une impression de haute qualité. L'environnement d'impression est abordé dans <xref linkend="printing"/>.</para>
  </section>

  <section id="platform-ipc">
    <title>Réseau et communication inter-processus</title>

    <para>Le bureau GNOME prend pleinement en charge le transfert de données par le presse-papiers ou le glisser-déposer. Les interfaces de programmation de GTK+ aident à créer des applications interopérables avec le reste du bureau. Les fonctionnalités de presse-papiers et de glisser-déposer sont abordées dans <xref linkend="clipboard"/>.</para>

    <para>Avec <ulink url="http://www.freedesktop.org/">freedesktop.org</ulink>, GNOME fournit le système de messages D-Bus. D-Bus est un bus de messages multi-bureaux qui permet à tous les types d'applications de communiquer entre elles. D-Bus est abordé dans <xref linkend="dbus"/>.</para>

    <para>GNOME dispose du système de composants Bonobo, construit au-dessus de CORBA. Bonobo permet aux programmeurs de créer des composants complexes intégrables pouvant être réutilisés dans d'autres programmes. Il faut signaler que Bonobo est maintenant obsolète. Tout nouveau code devrait utiliser D-Bus et d'autres technologies à la place. Bonobo est abordé dans <xref linkend="bonobo-corba"/>.</para>

    <para>Pour que les réseaux soient plus facilement gérables par les utilisateurs, GNOME prend en charge la découverte de services DNS. Cette fonctionnalité permet aux applications de trouver automatiquement des services sur un réseau local, au lieu d'exiger des utilisateurs la saisie d'adresses réseau. La découverte de services DNS est abordée dans <xref linkend="dns-sd"/>.</para>

    <para>Finalement, GNOME offre plusieurs bibliothèques pour travailler avec XML et les services Web. Ces technologies prennent de plus en plus d'importance pour les développeurs d'applications. XML et les services Web sont abordés dans <xref linkend="xml-web-services"/>.</para>
  </section>

  <section id="platform-desktop">
    <title>Technologies du bureau</title>

    <para>Le bureau GNOME présente de nombreux endroits où les applications peuvent fournir une intégration poussée, comme avec la mise à disposition d'applets de tableau de bord ou de greffons pour le gestionnaire de fichiers. La plupart de ces fonctionnalités sont abordées dans <xref linkend="desktop-tech"/>.</para>

    <para>GNOME fournit des recommandations complètes pour les interfaces utilisateur (Human Interface Guidelines) afin d'aider à réaliser des applications plus ergonomiques. Les standards GNOME d'ergonomie ont été les premiers du genre pour les environnements de bureau libres et ils continuent de s'améliorer à travers l'engagement de GNOME pour une meilleure expérience utilisateur. L'ergonomie est abordée dans <xref linkend="usability"/>.</para>

    <para>GNOME fournit aussi un système d'aide complet, ainsi que des recommandations stylistiques pour la rédaction de documentation. Bien que parfois négligée, une aide utilisateur bien faite peut améliorer nettement votre logiciel. La documentation est abordée dans <xref linkend="documentation"/>.</para>
  </section>
</chapter>
