[svnbook commit] r2632 - in trunk/src/it: . book

andreaz noreply at red-bean.com
Sun Jan 28 03:44:26 CST 2007


Author: andreaz
Date: Sun Jan 28 03:44:25 2007
New Revision: 2632

Modified:
   trunk/src/it/Howto-translate.txt
   trunk/src/it/book/ch08.xml

Log:
Italian translation for Ch08 until svn.developer.contrib.get-code exluded.


Modified: trunk/src/it/Howto-translate.txt
==============================================================================
--- trunk/src/it/Howto-translate.txt	(original)
+++ trunk/src/it/Howto-translate.txt	Sun Jan 28 03:44:25 2007
@@ -56,7 +56,7 @@
 Ch05 - 46pg  [??????]+[????] per verifica    [01-10-2006] [TIP] In cerca di traduttore: Iniziato a tradurre da basetta (in pausa).
 Ch06 - 50pg  [kalos]+[????]  per verifica    [18-09-2006] [TIP] Tutto. (spera)
 Ch07 - 61pg  [Miky]+[????]   per verifica    [04/10/2006] [TIP] Tutto. (spera)
-Ch08 - 50pg  [andreaz]+[???] per verifica    [30/10/2006] [TIP] Tradotto da inizio fino a svn.developer.webdav esclusa
+Ch08 - 50pg  [andreaz]+[???] per verifica    [30/10/2006] [TIP] Tradotto da inizio fino a svn.developer.contrib.get-code esclusa
 Ch09 - 104pg [bpietro]+[??]  per verifica    [??-??-2006] [TBV] pg. 1-30
              [??]                            [??        ] [NA].
 appa - 9pg   [andreaz]+[ender]  per verifica [15-10-2006] [TC]  Tutto.

Modified: trunk/src/it/book/ch08.xml
==============================================================================
--- trunk/src/it/book/ch08.xml	(original)
+++ trunk/src/it/book/ch08.xml	Sun Jan 28 03:44:25 2007
@@ -1686,9 +1686,9 @@
         during the crawl.</para>
 
       <para>Vediamo un esempio di programma che utilizza il legame SWIG per
-        Python di Subversion per trovare ricorsivamente le più recenti
+        Python di Subversion per esplorare ricorsivamente le più recenti
         revisioni del repository, e stampare i vari percorsi raggiunti
-        durante la ricerca.</para>
+        durante l'esplorazione.</para>
 
       <example id="svn.developer.usingapi.otherlangs.ex-1">
         <title>Utilizzare lo strato repository con Python</title>
@@ -2282,7 +2282,7 @@
   <sect1 id="svn.developer.webdav">
     <title>WebDAV</title>
 
-    <para>WebDAV (shorthand for <quote>Web-based Distributed Authoring
+    <para lang="en">WebDAV (shorthand for <quote>Web-based Distributed Authoring
       and Versioning</quote>) is an extension of the standard HTTP
       protocol designed to make the web into a read/write medium,
       instead of the basically read-only medium that exists today.
@@ -2292,7 +2292,17 @@
       are available (along with a lot of other useful information) at
       <ulink url="http://www.webdav.org/"/>.</para>
 
-    <para>A number of operating system file browsers are already able
+    <para>WebDAV (abbreviazione di <quote>Creazione e versionamento distribuiti
+      basati sul web</quote>) è un'estensione del protocollo standard HTTP
+      progettato per fare del web un mezzo di lettura/scrittura,
+      invece del mezzo di sola lettura che esiste oggi.
+      La teoria è che le directory e i file possono essere condivisi—
+      entrambi come oggetti leggibili e scrivibili—sul web.  RFC
+      2518 e 3253 descrivono le estenzioni WebDAV/DeltaV a HTTP, e
+      sono disponibili (con molte altre utili informazioni) a
+      <ulink url="http://www.webdav.org/"/>.</para>
+
+    <para lang="en">A number of operating system file browsers are already able
       to mount networked directories using WebDAV.  On Win32, the
       Windows Explorer can browse what it calls Web Folders (which are
       just WebDAV-ready network locations) as if they were regular
@@ -2300,28 +2310,50 @@
       Nautilus and Konqueror browsers (under GNOME and KDE,
       respectively).</para>
 
-    <para>How does all of this apply to Subversion?  The mod_dav_svn
+    <para>Un numero di navigatori di file di sistemi operativi sono già capaci
+      di montare directory sulla rete utilizzando WebDAV.  In Win32,
+      Windows Explorer può navigare quelle che chiama Cartelle Web (che sono
+      posizioni di rete pronte per WebDAV) come se fossero regolari cartelle
+      condivise.  Anche Mac OS X ha questa capacità, così come i navigatori
+      Nautilus e Konqueror (in GNOME e KDE,
+      rispettivamente).</para>
+
+    <para lang="en">How does all of this apply to Subversion?  The mod_dav_svn
       Apache module uses HTTP, extended by WebDAV and DeltaV, as one
       of its network protocols.  Subversion uses mod_dav_svn to map
       between Subversion's versioning concepts and those of RFCs 2518
       and 3253.
     </para>
 
-    <para>For a more thorough discussion of WebDAV, how it works, and
+    <para>Come si applicato tutto questo a Subversion?  Il modulo mod_dav_svn
+      di Apache utilizza HTTP, esteso da WebDAV e DeltaV, come uno dei
+      propri protocolli di rete.  Subversion utilizza mod_dav_svn per mappare
+      i concetti di versionamento di Subversion con quelli degli RFC 2518
+      e 3253.
+    </para>
+
+    <para lang="en">For a more thorough discussion of WebDAV, how it works, and
       how Subversion uses it, see <xref linkend="svn.webdav"/>.  Among
       other things, that appendix discusses the degree to which
       Subversion adheres to the generic WebDAV specification, and how
       that affects interoperability with generic WebDAV
       clients.</para>
+
+    <para>Per una discussione più completa di WebDAV, come funziona, e
+      come Subversion lo utilizza, vedere <xref linkend="svn.webdav"/>.  Fra le
+      altre cose, l'appendice discute il grado al quale aderisce
+      Subversion delle specifiche generiche di WebDAV, e come
+      questo influenzi l'interoperabilità tra client WebDAV
+      generici.</para>
   </sect1>
 
   <!-- ================================================================= -->
   <!-- ================================================================= -->
   <!-- ================================================================= -->
   <sect1 id="svn.developer.pools">
-    <title>Programming with Memory Pools</title>
+    <title>Programmare con i pool di memoria</title>
 
-    <para>Almost every developer who has used the C programming
+    <para lang="en">Almost every developer who has used the C programming
       language has at some point sighed at the daunting task of
       managing memory usage.  Allocating enough memory to use, keeping
       track of those allocations, freeing the memory when you no
@@ -2333,7 +2365,19 @@
       type, which represents a pool from which the application may
       allocate memory.</para>
 
-    <para>A memory pool is an abstract representation of a chunk of
+    <para>Quasi ogni sviluppatore che ha utilizzato il linguaggio di
+      programmazione C a qualche punto ha sospirato allo scoraggiante compito di
+      gestire l'uso della memoria.  Allocare abbastanza memoria da utilizzare,
+      mantenere traccia di quelle allocazioni, liberare la memoria quando non è
+      più necessaria—questi compiti possono essere abbastanza complessi.
+      E naturalmente, fallire a fare queste cose correttamente può risultare in un
+      programma che va in crash, o peggio, fa andare in crash il computer.
+      Fortunatamente, la libreria APR da cui Subversion dipende per
+      portabilità fornisce il tipo <structname>apr_pool_t</structname>,
+      che rappresenta un pool dal quale l'applicazione può
+      allocare memoria.</para>
+
+    <para lang="en">A memory pool is an abstract representation of a chunk of
       memory allocated for use by a program.  Rather than requesting
       memory directly from the OS using the standard
       <function>malloc()</function> and friends, programs that link
@@ -2351,7 +2395,25 @@
       pool contained, until of course there is no more memory
       available on the system.</para>
 
-    <para>Now, if this were the end of the pool story, it would hardly
+    <para>Un pool di memoria è una rappresentazione astratta di un pezzo di
+      memoria allocata per l'uso da parte di un programma.  Piuttosto che richiedere
+      la memoria direttamente al sistema operativo utilizzando la funzione
+      standard <function>malloc()</function> e simili, i porgrammi che si 
+      collegano a APR possono semplicemente richiedere che venga creato un pool
+      di memoria (utilizzando la funzione <function>apr_pool_create()</function>).
+      APR allocherà un pezzo di memoria di moderata grandezza dal sistema operativo,
+      e questa memoria diverrà istantaneamente disponibile per l'uso da parte del
+      programma.  Ogni volta che il programma necessita di qualche pool di memoria,
+      utilizza una delle funzioni dell'API per i pool di APR, come
+      <function>apr_palloc()</function>, che ritorna una posizione di memoria
+      generica dal pool.  Il programma può continuare a chiedere bit e pezzi di
+      memoria dal pool, e APR continuerà a
+      esaudire le richieste.  I pool cresceranno automaticamente in grandezza
+      per accogliere i programmi che richiedono più memoria di quella che il pool
+      originale conteneva, naturalmente fino a quando non ci sia più memoria
+      disponibile nel sistema.</para>
+
+    <para lang="en">Now, if this were the end of the pool story, it would hardly
       have merited special attention.  Fortunately, that's not the
       case.  Pools can not only be created; they can also be cleared
       and destroyed, using <function>apr_pool_clear()</function> and
@@ -2364,7 +2426,20 @@
       subpools are destroyed; if you destroy a pool, it and its
       subpools are destroyed.</para>
 
-    <para>Before we go further, developers should be aware that they
+    <para>Ora, se questa fosse stata la fine della storia dei pool, a stento
+      avrebbe meritato speciale attenzione.  Fortunatamente, questo non è il
+      caso.  I pool possono non solo essere creati; possono anche essere puliti
+      e distrutti, utilizzando rispettivamente <function>apr_pool_clear()</function> e
+      <function>apr_pool_destroy()</function>.  Questo
+      da agli sviluppatori la flessibilità di allocare varie—o varie
+      migliaia—cose dal pool, e poi pulire tutta
+      questa memoria con una singola chiamata a funzione!  Inoltre, i pool
+      hanno una gerarchia.  Si possono fare dei <quote>sotto pool</quote> di ogni
+      pool creato precedentemente.  Quando si pulisce un pool, tutti i suoi
+      sotto pool vengono distrutti; se si distrugge un pool, questo e i suoi
+      sotto pool vengono distrutti.</para>
+
+    <para lang="en">Before we go further, developers should be aware that they
       probably will not find many calls to the APR pool functions we
       just mentioned in the Subversion source code.  APR pools offer
       some extensibility mechanisms, like the ability to have custom
@@ -2377,7 +2452,20 @@
       <function>svn_pool_clear()</function>, and
       <function>svn_pool_destroy()</function>.</para>
 
-    <para>While pools are helpful for basic memory management, the
+    <para>Prima di andare oltre, gli sviluppatori dovrebbero essere informati che
+      probabilmente non troveranno nel codice sorgente di Subversion molte delle 
+      chiamate alle funzioni di APR per i pool che abbiamo appena menzionato.
+      I pool di APR offrono qualche meccanismo di estendibilità, come l'abilità
+      di avere <quote>dati utente</quote> personalizzati attaccati al pool, e
+      meccanismi per registrare funzioni di pulizia che possono essere chiamate
+      quando il pool viene distrutto.  Subversion fa uso di queste estensioni in
+      un modo piuttosto non banale.  Così, Subversion fornisce (e la maggior parte
+      del proprio codice utilizza) le funzioni di avvolgimento
+      <function>svn_pool_create()</function>,
+      <function>svn_pool_clear()</function>, e
+      <function>svn_pool_destroy()</function>.</para>
+
+    <para lang="en">While pools are helpful for basic memory management, the
       pool construct really shines in looping and recursive scenarios.
       Since loops are often unbounded in their iterations, and
       recursions in their depth, memory consumption in these areas of
@@ -2388,6 +2476,17 @@
       is fairly common—recursively crawling a directory tree,
       doing some task to each thing in the tree.</para>
 
+    <para>Mentre i pool sono utili per una gestione di base della memoria, la
+      costruzione dei pool brilla realmente negli scenari di ciclo e ricorsione.
+      Poiché i cicli sono spesso illimitati nelle loro iterazioni, e le
+      ricorsioni nella loro profondità, il consumo di memoria in queste aree del
+      codice può diventare non predicibile.  Fortunatamente, utilizzando pool di
+      memoria annidati può essere un buon modo per gestire facilmente queste
+      situazioni potenzialmente pericolose.  L'esempio seguente
+      dimostra l'uso di base dei pool annidati in una situazione che è
+      ragionevolmente comune—l'esplorazione ricorsiva di un albero di directory,
+      eseguendo qualche compito per ogni cosa nell'albero.</para>
+
     <example id="svn.developer.pools.ex-1">
       <title>Effective Pool Usage</title>
       <programlisting>
@@ -2474,7 +2573,7 @@
 </programlisting>
     </example>
 
-    <para>The previous example demonstrates effective pool usage in
+    <para lang="en">The previous example demonstrates effective pool usage in
       <emphasis>both</emphasis> looping and recursive situations.
       Each recursion begins by making a subpool of the pool passed to
       the function.  This subpool is used for the looping region, and
@@ -2488,7 +2587,21 @@
       <function>alloc()</function> and <function>free()</function>
       every single piece of data used!</para>
     
-    <para>Pools might not be ideal for every application, but they are
+    <para>L'esempio precedente dimostra l'effettivo utilizzo del pool in
+      <emphasis>entrambe</emphasis> le situazioni di ciclo e ricorsione.
+      Ogni ricorsione inizia creando un sotto pool del pool passato alla
+      funzione.  Questo sotto pool è utilizzato per la regione di ciclo, e
+      pulito con ogni iterazione.  Il risultato di utilizzo della memoria è
+      approssimativamente proporzionale alla profondità della ricorsione, non il
+      numero totale di file e directory presenti come figli della directory
+      di più alto livello.  Quando la prima chiamata a questa funzione ricorsiva
+      finalmente finisce, attualmente c'è un dato molto piccolo immagazzinato
+      nel pool che le è stato passato.  Ora immaginate la complessità ulteriore
+      che sarebbe presente se questa funzione dovesse usare
+      <function>alloc()</function> e <function>free()</function>
+      ogni singolo pezzo di dati utilizzati!</para>
+    
+    <para lang="en">Pools might not be ideal for every application, but they are
       extremely useful in Subversion.  As a Subversion developer,
       you'll need to grow comfortable with pools and how to wield them
       correctly.  Memory usage bugs and bloating can be difficult to
@@ -2496,15 +2609,23 @@
       provided by APR has proven a tremendously convenient,
       time-saving bit of functionality.</para>
 
+    <para>I pool possono non essere l'ideale per ogni applicazione, ma sono
+      estremamente utili in Subversion.  Come sviluppatore di Subversion,
+      occorre prendere confidenza con i pool e come maneggiarli correttamente.
+      Gli errori di utilizzo della memoria e la sua crescita possono essere
+      difficili da diagnosticare e correggere malgrado l'API, ma la
+      costruzione del pool fornita da APR è risultata tremendamente conveniente,
+      facendo risparmiare tempo in bit di funzionalità.</para>
+
   </sect1>
 
   <!-- ================================================================= -->
   <!-- ================================================================= -->
   <!-- ================================================================= -->
   <sect1 id="svn.developer.contrib">
-    <title>Contributing to Subversion</title>
+    <title>Contribuire a Subversion</title>
     
-    <para>The official source of information about the Subversion
+    <para lang="en">The official source of information about the Subversion
       project is, of course, the project's website at
       <ulink url="http://subversion.tigris.org/"/>.  There you can
       find information about getting access to the source code and
@@ -2513,11 +2634,20 @@
       participating in this community by contributing changes to the
       source code, here are some hints on how to get started.</para>
 
+    <para>La fonte ufficiale di informazioni sul progetto Subversion
+      è, naturalmente, il sito web del progetto all'indirizzo
+      <ulink url="http://subversion.tigris.org/"/>.  Qui si possono trovare
+      informazioni su come ottenere accesso al codice sorgente e partecipare
+      alle liste di discussione.  La comunità di Subversion da sempre il
+      benvenuto a nuovi membri.  Se si è interessati a partecipare
+      a questa comunità contribuendo con cambiamenti al codice
+      sorgente, qui ci sono alcuni suggerimenti su come iniziare.</para>
+
     <!-- =============================================================== -->
     <sect2 id="svn.developer.contrib.join">
-      <title>Join the Community</title>
+      <title>Unirsi alla comunità</title>
       
-      <para>The first step in community participation is to find a way
+      <para lang="en">The first step in community participation is to find a way
         to stay on top of the latest happenings.  To do this most
         effectively, you will want to subscribe to the main developer
         discussion list (<email>dev at subversion.tigris.org</email>) and
@@ -2531,7 +2661,21 @@
         Mailing Lists section of the website for other
         Subversion-related lists you might be interested in.</para>
 
-      <para>But how do you know what needs to be done?  It is quite
+      <para>Il primo passo nella partecipazione alla comunità è trovare un modo
+        per rimanere aggiornati sugli ultimi eventi.  Per fare questo più
+        efficacemente, occorrerà iscriversi alla lista di discussione principale
+        di sviluppo (<email>dev at subversion.tigris.org</email>) e
+        alla lista dei commit (<email>svn at subversion.tigris.org</email>).
+        Seguendo queste liste anche approssimativamente, si ha accesso
+        a importanti discussioni sul disegno, si possono vedere i cambiamenti
+        effettivi al codice sorgente di Subversion quando occorrono, e si può
+        assistere alle rassegne di questi cambiamenti e proposte di cambiamento.
+        Queste liste di discussione basate sulle email sono il mezzo primario di
+        comunicazione per lo sviluppo di Subversion.  Vedere la sezione
+        delle liste mail del sito web per altre liste su
+        Subversion a cui si può essere interessati.</para>
+
+      <para lang="en">But how do you know what needs to be done?  It is quite
         common for a programmer to have the greatest intentions of
         helping out with the development, yet be unable to find a good
         starting point.  After all, not many folks come to the
@@ -2545,11 +2689,25 @@
         If you want to start with something small, look for issues
         marked as <quote>bite-sized</quote>.</para>
       
+      <para>Ma come si può conoscere ciò che deve essere fatto?  È abbastanza
+        comune per un programmatore avere le più grandi intenzioni di aiutare
+        con lo sviluppo, ma non trovare un buon punto di inizio.
+        Dopo tutto, non molta gente arriva alla comunità
+        avendo già deciso su quale particolare rogna
+        vorrebbero impegnarsi.  Ma osservando le liste di discussione,
+        si possono vedere menzioni di errori esistenti o
+        richieste di caratteristiche che interessano particolarmente.  Inoltre,
+        un ottimo posto per cercare compiti eccezionali, non reclamati è il
+        database Issue Tracking sul sito web di Subversion.  Qui si troveranno
+        la lista corrente degli errori conosciuti e delle richieste di caratteristiche.
+        Se si vuole iniziare con qualche cosa di piccolo, cercare problemi
+        marcati come <quote>bite-sized</quote>.</para>
+      
     </sect2>
     
     <!-- =============================================================== -->
     <sect2 id="svn.developer.contrib.get-code">
-      <title>Get the Source Code</title>
+      <title>Prendere il codice sorgente</title>
       
       <para>To edit the code, you need to have the code.  This means
         you need to check out a working copy from the public




More information about the svnbook-dev mailing list