# 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 graphics.

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 gio.

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 gconf.

ù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 i18n, l'accessibilità invece in a11y.

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 multimedia.

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 printing.

## 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 clipboard.

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 dbus.

Tra le caratteristiche di GNOME c'è il sistema a componenti Bonobo, basato su CORBA. Bonobo consente agli sviluppatori di creare complessi componenti incorporabili che possono essere riusati all'interno di altri programmi. Bonobo è discusso in bonobo-corba.

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 dns-sd.

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 xml-web-services.

## 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 desktop-tech.

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 usability.

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 documentation.