# Panoramica della piattaforma

La piattaforma GNOME fornisce un ambiente di sviluppo completo per applicazioni grafiche e per altri software. Facendo uso delle tecnologie presenti in GNOME, è possibile creare softare di elevata qualità capace di soddisfare e superare le aspettative dei propri utenti. Questo capitolo fornisce una breve panoramica dei componenti che sono discussi in questo documento.

## Tecnologie di base

GNOME fornisce diverse librerie per costruire interfacce grafiche attraenti. Fornisce librerie per la visualizzazione e la manipolazione dei controlli tipici delle interfacce utente, per la disposizione e il rendering di testo nella maggior parte dei sistemi di scrittura del mondo e per il disegno di sofisticata grafica vettoriale sullo schermo. Le tecnologie grafiche presenti in GNOME sono delineate in .

The GIO library in GLib, together with the GVFS backend, provides a file system abstraction that allows users to work with files on remote servers as well as the local file systems. GIO provides a high-level API for file operations, making development fast and easy. Using GIO will allow your application to support remote files and folders automatically. GIO and GVFS are discussed in .

GNOME fornisce la libreria e il demone GConf per la memorizzazione e il recupero delle preferenze utente. GConf presenta una semplice API che rende facile l'applicazione istantanea delle preferenze nelle proprie applicazioni. L'uso di GConf inoltre consente agli amministratori di fornire impostazioni predefinite e impositive per i propri utenti. GConf è discusso in .

ùGNOME fornisce delle funzioni per l'internazionalizzazione e l'accessibilità, che sono d'aiuto per poter raggiungere il più ampio numero di potenziali utenti. La maggior parte del supporto all'internazionalizzazione e all'accessibilità è integrato in modo diretto, ma ci sono diversi aspetti di cui bisogna tener conto quando si sviluppa un'applicazione. L'internazionalizzazione è discussa in , l'accessibilità invece in .

GNOME si appoggia a GStreamer, un framework multimediale estremamente efficace per la creazione, la modifica e la riproduzione di contenuti audio e video. GStreamer è discusso in .

GNOME inoltre fornisce un framework completo per la stampa, che si appoggia a CUPS quando possibile. Il framework di stampa di GNOME consente di fornire un'interfaccia coerente la stampa di alta qualità. Il framework di stampa è discusso in .

## IPC e rete

L'ambiente grafico GNOME fornisce un supporto completo al trasferimento di dati usando gli appunti o attraverso il trascinamento. Le API presenti nelle GTK+ sono d'aiuto nel creare applicazioni che possono interoperare con il resto dell'ambiente grafico. Le funzioni di trascinamento e appunti sono discusse in .

Grazie a freedesktop.org, GNOME fornisce il sistema di messaggi D-Bus. D-Bus è un bus di messaggi cross-desktop, che consente a tutti i tipi di applicazione di comunicare tra di loro. D-Bus è discusso in .

GNOME features the Bonobo component system, built on top of CORBA. Bonobo allows programmers to create complex embeddable components which can be reused inside other programs. Note that Bonobo has been deprecated. Newly written code should use D-Bus and other technologies instead. Bonobo is discussed in .

Per facilitare agli utenti la gestione delle reti, GNOME supporta il DNS Service Discovery, che permette alle applicazioni di trovare automaticamente i servizi su una rete locale, invece di richiedere agli utenti di fornire gli indirizzi di rete. Il DNS Service Discovery è discusso in .

Infine, GNOME fornisce un numero di librerie per lavorare con XML e servizi web. Tali tecnologie stanno diventando sempre più importanti per gli sviluppatori di applicazioni. XML e i servizi web sono discussi in .

## Tecnologie del desktop

Nell'ambiente grafico GNOME sono evidenti diversi modi con cui le applicazioni possono fornire una migliore integrazione, come per esempio fornire delle applet per il pannello oppure plugin per il file manager. Molte di queste funzioni sono discusse in .

GNOME fornisce le complete Human Interface Guidelines per aiutare nella creazione di applicazioni più usabili. Gli standard di usabilità di GNOME sono stati i primi a essere definiti tra gli ambienti grafici liberi e continuano a essere migliorati attraverso l'impegno di GNOME di una migliore esprienza utente. L'usabilità è discussa in .

GNOME inoltre fornisce un sistema d'aiuto completo, così come linee guida di stile per la stesura della documentazione. Sebbene spesso non molto apprezzato, un buon manuale utente puù migliorare in modo significativo il proprio software. La documentazione è discussa in .