1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD>
<META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
<TITLE>GTK Tutorial: Introduzione</TITLE>
<LINK HREF="gtk_tut_it-2.html" REL=next>
<LINK HREF="gtk_tut_it.html#toc1" REL=contents>
</HEAD>
<BODY BGCOLOR="#FFFFFF">
<A HREF="gtk_tut_it-2.html">Avanti</A>
Indietro
<A HREF="gtk_tut_it.html#toc1">Indice</A>
<HR NOSHADE>
<H2><A NAME="s1">1. Introduzione</A></H2>
<P>GTK (GIMP Toolkit) è stato orginariamente sviluppato come toolkit per
il programma GIMP (General Image Manipulation Program). GTK è costruito
sulla base del kit di disegno di GIMP, il GDK (GIMP Drawing Kit) il quale
è costruito a sua volta attorno alle funzioni della Xlib. E' chiamato
``toolkit di GIMP'' perché era inizialmente scritto per sviluppare GIMP,
ma ora viene utilizzato nello sviluppo di molti progetti software ``free''.
Gli autori sono
<UL>
<LI> Peter Mattis <CODE>
<A HREF="mailto:petm@xcf.berkeley.edu">petm@xcf.berkeley.edu</A></CODE> </LI>
<LI> Spencer Kimball <CODE>
<A HREF="mailto:spencer@xcf.berkeley.edu">spencer@xcf.berkeley.edu</A></CODE></LI>
<LI> Josh MacDonald <CODE>
<A HREF="mailto:jmacd@xcf.berkeley.edu">jmacd@xcf.berkeley.edu</A></CODE></LI>
</UL>
<P>
<P>GTK è essenzialmente una API (application programmers interface)
orientata agli oggetti.
Anche se scritto completamente in C, è implementato usando l'idea delle
classi e delle funzioni di callback (puntatori a funzioni).
<P>
<P>C'è anche una terza componente chiamata glib che contiene una serie di
implementazioni differenti di alcune chiamate di funzioni standard e anche
alcune funzioni aggiuntive, per esempio per la manipolazione delle liste
collegate. Le funzioni sostitutive sono usate per migliorare la
portabilità di GTK. Alcune delle funzioni implementate qui non sono
disponibili o non sono standard, altre sono uniche come g_strerror().
Altre contengono miglioramenti alle stesse della libc come g_malloc che ha
delle utility di debugging migliorate.
<P>
<P>Questo tutorial è un tentativo di documentare il meglio possibile la
libreria gtk e non pretende di essere completo. Questo tutorial suppone una
buona conoscenza del linugaggio C e di come creare programmi in C. Saranno
facilitati i lettori che hanno una precedente esperienza nella programmazione
in X. Se il GTK è il primo insieme di widget che studiate, vi prego di
dirmi come avete trovato questo tutorial e che tipo di problemi avete avuto.
Notate che c'è anche una versione per il C++ della libreria GTK (chiamata
GTK--), quindi se preferite utilizzare questo linguaggio al posto del C potreste
cercare questa versione al posto della GTK normale.
Ci sono poi un ``wrapper'' Objective C e un collegamento a Guile, ma non ne
seguo l'evoluzione.
<P>
<P>Mi farebbe molto piacere conoscere qualsiasi problema che abbiate avuto
nell'imparare il GTK da questo documento e apprezzerei anche critiche sul come
migliorarlo.
<P>
<HR NOSHADE>
<A HREF="gtk_tut_it-2.html">Avanti</A>
Indietro
<A HREF="gtk_tut_it.html#toc1">Indice</A>
</BODY>
</HTML>
|