Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
DI FORMAZIONE
ON-SITE
education@infomedia.it
www.infomedia.it EDITORIALE
DIREZIONE EDITORIALE
sostenibilità
NATALE FINO
COLLABORATORI
SOLVEIG HAUGLAND
EDWARD MACNAGHTEN Dal prossimo mese di Dicembre parte la nostra campagna contro lo spreco della carta
ANDREW MIN e la deforestazione selvaggia delle foreste primarie. Abbiamo deciso di dare impulso
FRANCESCO PENTELLA a questa iniziativa prendendo atto della realtà diffusa in cui la carta è considerata
GARY RICHMOND una risorsa illimitata, a buon mercato e tuttora utilizzata per qualsiasi tipo di
LU I G I S A N T A N G E L O
pubblicazione (compresi miliardi di volantini “usa e getta”, come quelli che lastricano
le zone fieristiche all’ora di chiusura).
Dati alla mano, ogni anno in Italia vengono sprecati solo … 50 miliardi di fogli di carta!
Ossia 2.000.000 di alberi. Dal 1995 al 2020 la produzione internazionale della cellulosa
e della carta per l’editoria sarà cresciuta del 77%, e circa il 75% del legname importato
GRUPPO EDITORIALE INFOMEDIA SRL
da Russia e Indonesia, e quindi della carta utilizzata per la stampa, proviene da alberi
V I A V A L D E R A P. 1 1 6
5 6 0 3 8 PO N S A C C O ( P I ) I T A L I A abbattuti illegalmente nelle foreste primarie. Tutti gli anelli che compongono la catena
TE L 0 5 8 7 7 3 6 4 6 0 F A X editoriale sono, a vario titolo, responsabili del consumo della carta ed ognuno, con un
0587732232 po’ di buona volontà, può (e prima o poi dovrà) correggere le storture di un processo
E-MAIL RED_ editoriale disattento alla sostenibilità.
LOGIN@GRUPPOINFOMEDIA.IT
Un esempio è la quantità esorbitante di carta utilizzata per gli atti dei parlamenti
S I T O W E B W W W. I N F O M E D I A . I T
(nazionali ed europeo), magari per minute e testi di validità più che effimera; ulteriore
esempio è il numero di copie tirate dai quotidiani, dai settimanali e dai periodici
DIREZIONE che è di gran lunga superiore (per via dei contributi statali) alle copie effettivamente
NATALE FINO
vendute: in sintesi, si sa già in partenza che gran parte di quelle copie è destinata al
macero. Punto.
TE C H N I C A L B O O K
Questo scenario distorto, era tarato per una società in cui l’informazione veniva
BOOK@GRUPPOINFOMEDIA.IT veicolata quasi esclusivamente su carta, ma oggigiorno non è più così: tra televisione,
radio, Internet, telefoni cellulari e dispositivi vari, il cartaceo non è più “il principale
MARKETING & ADVERTISING
SEGRETERIA: 0587736441 supporto” di veicolazione. Invece attraversando i capannoni industriali capolinea
M A R KE T I N G @ G R U P P O I N F O M E D I A . I T della distribuzione editoriale, si nota che sono stracolmi di torri di rifiuti editoriali
cartacei. Migliaia di tonnellate di prodotti destinati al macero ogni anno.
AMMINISTRAZIONE
Il progetto Infomedia Green è ambizioso e innovativo, per realizzarlo abbiamo necessità
AMMINISTRAZIONE@GRUPPOINFOMEDIA.IT della collaborazione e della buona volontà di tutti i nostri lettori: perché ognuno, dalla
SEGRETERIA sua scrivania, può iniziare a far molto per una migliore sostenibilità.
Per mettere in atto questo progetto promuoveremo degli incentivi per promuovere un
INFO@GRUPPOINFOMEDIA.IT consumo più critico, prendendo atto dell’inevitabile sorpasso del digitale sul cartaceo:
la qualità dei nostri contenuti resta immutata, ed è comunque possibile stampare i
GRAFICA PDF degli articoli che più interessano. Non prevediamo l’eliminazione totale della
GRAFICA@GRUPPOINFOMEDIA.IT
stampa su carta, ma opteremo per una soluzione “on demand”: l’utente che non
vuol rinunciare alla sua copia cartacea completa potrà comunque acquistarla in ogni
momento, limitando al massimo lo spreco di carta. È una questione di sensibilità e
anche di comodità, visto che già oggi trascorriamo più tempo a leggere informazioni
tecniche dal video e sempre meno su carta.
UFFICIO ABBONAMENTI
TE L 0 5 8 7 7 3 6 4 6 0 F A X
0587732232
ABBONAMENTI@GRUPPOINFOMEDIA.IT Natale Fino
W W W. I N F O M E D I A . I T
3
Login Internet Expert n.66 Novembre/Dicembre 2007
SOMMARIO LOGIN n.66 - Novembre/Dicembre 2007
Speciale
ODF/OOXML
ODF e OOXML a confronto
di Edward Macnaghten 8
Solutions
Il pattern MVC e le librerie DisplayTag
Prima parte
u InVetrina 46
di Luigi Santangelo 29
NetCrunch Per contattare la Redazione di Login
di Francesco Pentella 35 scrivete a:
Gruppo Editoriale Infomedia S.r.l.
Tips & Tricks per GNU/Linux Via Valdera P. 116 - 56038 Ponsacco (PI)
Tel. 0587/736460 (r.a.) - Fax 0587/732232
Seconda parte e-mail: red_login@infomedia.it - http://www.infomedia.it/Login
di Gary Richmond e Andrew Min 41 I listati che corredano gli articoli sono
liberamente scaricabili dagli indirizzi:
http://www.infomedia.it/Riviste/Login
������������������������������������������������������������������������������������������������������������������������������������������������
��� ������� �������� �� �������� ��������� ����������
������������������������������������������������
�������������������������������������������������
��������������������������������������������
������������������������
speciale ODF/OOXML
ODF/OOXML
a confronto
Un confronto tecnico tra i formati ODF e OOXML
Ü di Edward Macnaghten
Mi è stato chiesto dall’UK Action Group del- Ovviamente era necessario uno standard e
la Open Document Format Alliance di scri- ODF venne alla ribalta. Subito dopo Mi-
vere un documento sulle differenze tecniche crosoft suggerì che dovesse interpretare quel
tra i formati ODF e OOXML. Dopo molti ruolo il suo OOXML.
tormenti, correzioni, altri che hanno corretto Un punto importante di qualsiasi standard è
i miei errori, suggerimenti, modifiche e boz- la desiderabilità e la facilità con cui può es-
ze, ho comunque ottenuto qualcosa che può sere implementato. Uno standard che non
essere utile a chiunque. I documenti effettivi può essere implementato da tutti gli inte-
sono reperibili da [1] sia in formato PDF sia ressati del settore a cui lo standard si applica
ODT (Open Document Format). I prossimi lo rende praticamente inutile e serve solo a
brani rappresentano una versione adattata ostacolare l’interoperabilità piuttosto che a
del documento originale, pertanto per appro- promuoverla.
fondire suggerisco di prendere visione del La filosofia tecnica della progettazione di
documento integrale da [1]. Qui è pubblicato uno standard è perciò importante.
principalmente per scopi di riferimento. Questo documento esamina i formati ODF
e OOXML. Esamina alcune delle operazioni
di base che riguardano come i file vengono
Distinzioni tecniche tra ODF e effettivamente creati e i meriti (o demeriti)
OOXMLODF Alliance UK Action Group tecnici di ciò che viene creato.
Qui si esaminano solo gli aspetti tecnici;
quelli che riguardano la proprietà intellet-
Per molti anni vari produttori hanno pro- tuale e gli aspetti legali sono trattati altrove.
dotto software di tipo office. Tuttavia, è sta-
to difficile per un utente di una applicazione
manipolare affidabilmente i documenti crea- Storia di ODF
ti da altri. Le specifiche dei formati dei file
erano segreti saldamente protetti e perché ODF è un formato sviluppato come standard
possa esistere l’interoperabilità gli sviluppa- neutrale rispetto al produttore. Tuttavia, non
tori dovevano spendere grosse quantità di ri- ebbe origine da qualche parte in particolare
sorse cercando di decifrare i complessi dump ma piuttosto attraverso un processo di evolu-
dei file. zione [1] di seguito descritto.
8
Login Internet Expert n.66 Novembre/Dicembre 2007
speciale ODF/OOXML
9
Login Internet Expert n.66 Novembre/Dicembre 2007
speciale ODF/OOXML
Esempio delle
differenze XML tra file
word processor ODF e
OOXML
Le filosofie alla base di
ODF e di OOXML in-
fluenzano notevolmente
sul risultato finale. Un
modo per dimostrare ciò è
esaminare il contenuto del
file dello stesso documen-
to salvato nei differenti
formati. A questo scopo è
stato assemblato un documento di esempio e le parti
n Su pressione, Microsoft ha “ammorbidito” i ter- appropriate dei file XML sono state esaminate.
mini della propria licenza nel Gennaio 2005. Tut-
tavia, non lo ha fatto al punto di permettere al sof- Procedura
tware free di utilizzarlo [6].
n Subito dopo che il Commonwealth of Massachuset- Per fare ciò sono state eseguite le seguenti operazio-
ts’ Information Technology Division scelse il formato ni:
ODF OASIS come standard dei propri documen-
ti, Microsoft annunciò che avrebbe sottoposto il 1. È stato creato un semplice documento di una sola
suo formato all’ECMA per la standardizzazione pagina contenente una frase, con alcuni elementa-
[7]. In seguito in quel mese (Novembre 2005), Mi- ri effetti di font, e un’immagine. Questo documen-
crosoft rilassò ulteriormente la licenza e appose to è mostrato nella Figura 1 come riferimento.
una reciproca clausola di Non-Assertive-Clause 2. Il documento è stato salvato sia come file ODF
sui brevetti che deteneva sul formato [8]. (.odt) sia come file OOXML (.docx).
n Nel Dicembre 2006, l’ECMA approvò OOXML 3. I risultanti file zip sono stati aperti e analizzati per
come standard (ECMA 376) [9]. Ciò è avvenuto individuare il “nocciolo” del documento. Ciascu-
senza alcuna visibile consultazione pubblica, e no di questi è stato poi estratto.
approssimativamente dopo due anni e mezzo di 4. Il formato XML risultante di ciascun documento
sviluppo dal rilascio del precedente formato XML è stato poi riformattato per motivi di leggibilità
chiuso (Microsoft Office 2003) (10). Ed è stato aggiungendo semplicemente indentazioni e inter-
quasi immediatamente sottoposto all’ISO per es- ruzioni di riga. Le stesse regole e metodi di for-
sere certificato come standard internazionale nel- mattazione sono stati utilizzati su ciascun esem-
lo stesso mese. pio.
n Nel Gennaio 2007, una bozza di oltre 6000 pagine
è stata distribuita ai membri per 30 giorni per po- Il contenuto XML estratto e formattato di ciascun
terla analizzare e segnalare “contraddizioni”. documento è riportato nel Listato 1 (formato ODF)
n Microsoft ha rilasciato Microsoft Office 2007 nel e nel Listato 2 (formato OOXML). Segue un’analisi
Gennaio 2007. degli estratti XML.
n Nel Febbraio 2007, un numero senza precedenti Benché questo esempio mostri un aspetto relativa-
di venti paesi ha inviato commenti e contraddizio- mente piccolo dei due formati, evidenzia le differen-
ni allo standard. ze tra i due progetti.
10
Login Internet Expert n.66 Novembre/Dicembre 2007
speciale ODF/OOXML
LISTATO 1
11
Login Internet Expert n.66 Novembre/Dicembre 2007
speciale ODF/OOXML
LISTATO 2
12
Login Internet Expert n.66 Novembre/Dicembre 2007
speciale ODF/OOXML
LISTATO 3
13
Login Internet Expert n.66 Novembre/Dicembre 2007
speciale ODF/OOXML
LISTATO 3
12.33
</text:p>
</table:table-cell>
</table:table-row>
<table:table-row table:style-name=”ro2”>
<table:table-cell table:style-name=”ce2” office:value-type=”string”>
<text:p>
<text:span text:style-name=”T1”>
Normal
</text:span>
<text:span text:style-name=”T2”>
Bold
</text:span>
<text:span text:style-name=”T3”>
Italic
</text:span>
<text:span text:style-name=”T4”>
Both
</text:span>
</text:p>
</table:table-cell>
<table:table-cell table:number-columns-repeated=”2”/>
</table:table-row>
</table:table>
formattazione di base standard di XML stesso. Inol- l’XML risultante è stato riformattato per motivi
tre alcuni aspetti di OOXML possono essere estrema- di leggibilità aggiungendo solo indentazioni e in-
mente offuscati, come nel caso degli attributi eqn nel terruzioni di riga. Le stesse regole di formattazio-
tag v:f nell’esempio ne e gli stessi metodi sono stati utilizzati su cia-
scun esempio.
“<v:f eqn=”prod @3 21600 pixelWidth”/>”
L’XML formattato estratto da ciascun foglio è stato
riprodotto nel Listato 3 (ODF) e nei Listati 4 e 5
Esempio delle differenze XML tra file (OOXML).
spreadsheet ODF e OOXML Segue un’analisi degli estratti XML.
Come per il precedente esempio del word processing, Si noti che nel foglio di esempio:
è stato esaminato il formato di file di uno spreadsheet.
Di nuovo, in fase di esame, vengono alla ribalta le dif- n Le celle “D1” e “D2” contengono le formule
ferenze tra le filosofie dei formati. “=C1/3” e “=C2/2”
n Le celle “C3” e “D3” contengono le formule
Procedura “=SUM(C1:C2)” e “=SUM(D1:D2)”
n Le date sono in formato inglese (DD/MM/
Per fare ciò, sono state eseguite le seguenti operazio- YYYY)
ni:
1. È stato creato un foglio di calcolo elementare (rap- Analisi dei due esempi
presentato in Figura 2), costituito da due righe
ciascuna contenente un nome, una data, un valo- Il markup XML dei fogli di calcolo è più “complesso”
re e una semplice formula. È stata creata una riga di quello del word processing. Il motivo di ciò è che è
per il totale con il termine “Total” in grassetto e la necessario organizzare i dati in una tabella, costituita
somma dei valori delle rispettive colonne e infine da righe, colonne e celle. Come nel caso precedente,
è stato aggiunto un blocco di testo con una format- quanto è riportato nei listati non è la rappresentazio-
tazione variabile. ne integrale dei file XML ma evidenzia le differenze
2. Il documento è stato salvato sia come file ODF nella filosofia.
(.ods) sia come OOXML (.xlsx).
3. I risultanti file zip sono stati espansi e esplorati
per individuare il “nocciolo” del documento che Tag e denominazione dei tag
quindi è stato estratto.
4. Come nel caso dell’esempio del word processing, Quanto detto nell’esempio del word processing vale
14
Login Internet Expert n.66 Novembre/Dicembre 2007
speciale ODF/OOXML
LISTATO 4
anche per i fogli di calcolo. Brevi nomi di tag in OO- principale dei contenuti dell’XML del foglio. In-
XML significa semplicemente che la specifica è piut- vece ci sono dei riferimenti ad uno speciale file
tosto criptica. Ad esempio, che significa esattamente “sharedStrings.xml”. Se il tipo della cella è text, OO-
quanto segue? XML imposta l’attributo t nel tag c al valore s e il
body contiene un numero che rappresenta l’n-mo
“<c r=”A5” s=”3” t=”s”>” elemento (a partire da zero) di un elenco di stringhe
memorizzate nel file sharedStrings.xml. Il motivo di-
XML è concepito per essere più descrittivo. Benché chiarato alla base di ciò è ridurre la dimensione del
siano i computer che interpretano i file dell’applica- file consolidando le voci testuali duplicate del foglio
zione è agli sviluppatori che è assegnato il compito di di calcolo per risparmiare spazio.
implementare e mantenere le routine. Un più veloce
e più economico deployment e integrazione del for- Il valore della cella (A1) è:
mato si ottiene quando sono chiari i significati del tag
e del nome dell’attributo. Fred
15
Login Internet Expert n.66 Novembre/Dicembre 2007
speciale ODF/OOXML
LISTATO 5 0
</v>
<sst count=”4” uniqueCount=”4”>
</c>
<si>
<t>
Fred Un’ulteriore “caratteristica” peculiare del trattamen-
</t> to del testo di OOXML è la formattazione inconsi-
</si> stente. Lo stile di formattazione della cella è defini-
<si> to nel tag della cella (il tag c) utilizzando l’attributo
<t> s, che contiene un numero che funge da riferimento
George
</t>
incrociato all’n-mo elemento, a partire da zero, di un
</si> elenco di font definito nel file “styles.xml” (n è il nu-
<si> mero definito nell’attributo s). L’inconsistenza appare
<t> quando si esamina una cella con una formattazione
Total variabile del testo, dove una parte della formattazio-
</t> ne è definita nel tag si del file sharedStrings.xml, ma è
</si> esplicita e non utilizza i riferimenti ai “numeri degli
<si>
elementi font” come avviene nel file principale.
<r>
<t> Il formato ODF è meno complesso in quanto utilizza
Normal solo un attributo style-name che funge da riferimento
</t> incrociato a una tabella di stili. Ciò è consistente in
</r> tutta la specifica ODF:
<r>
<rPr> “<...style-name=»ce5»...>».
<b/>
<sz val=”10”/>
<rFont val=”Arial”/>
<family val=”2”/> Rappresentazione delle date
</rPr>
<t> Il valore della cella (B1) è:
Bold
</t> 3/5/2007
</r>
<r>
La rappresentazione ODF è:
<rPr>
<sz val=”10”/>
<i/> <table:table-cell table:style-name=”ce4” office:
<rFont val=”Arial”/> value-type=”date” office:date-value=”2007-03-05”>
<family val=”2”/> <text:p>
</rPr> 3/5/2007
<t> </text:p>
Italic </table:table-cell>
</t>
<rPr>
<sz val=”10”/> La rappresentazione OOXML è:
<b/>
<i/> <c r=”B1” s=”1”>
<rFont val=”Arial”/> <v>
<family val=”2”/> 39146
</rPr> </v>
<t>
</c>
Both
</t>
</r> Un aspetto importante è il trattamento delle date.
</si> OOXML memorizza le date 5 Marzo 2007 e 2 June
</sst> 2007 come numeri 39146 e 39235, rispettivamente. Si
tratta del numero di giorni a partire dal 31 Dicembre
1899. Tuttavia, vi è un “bug di progettazione” nella
Fred specifica che dice che l’anno 1900 deve essere trattato
</text:p> come anno bisestile, mentre non lo è. Se nel format
</table:table-cell> OOXML viene alterata una particolare impostazione,
la precedente rappresentazione numerica cambia nel
numero di giorni a partire dal 1 Gennaio 1904, evi-
La representation OOXML è tando questo problema.
ODF rappresenta le date 5 Marzo 2007 e 2 Giugno
<c r=”A1” t=”s”> 2007 come “2007-03-05” e “2007-06-02” concordando
<v> con lo standard ISO esistente.
16
Login Internet Expert n.66 Novembre/Dicembre 2007
speciale ODF/OOXML
23.00
ODF memorizza
sempre il valore nu-
La rappresentazione ODF è
merico come attri-
<table:table-cell office:value-type=”float” office:
value=”23”>
buto
<text:p>
23.00
</text:p>
</table:table-cell>
La rappresentazione OOXML è
<c r=”C1”>
Consistenza con il resto della specifica
<v>
23 La specifica ODF di tabella dei fogli di calcolo è
</v> identica alla definizione di tabella utilizzata nei do-
</c> cumenti di word processing. I tag e gli attributi sono
gli stessi. Infatti, la definizione “Table” si trova una
OOXML memorizza semplicemente il valore nume- sola volta nella specifica e i paragrafi relativi alla ta-
rico di ciascuna cella della tabella a meno che non vi bella del foglio di calcolo e del word processing fanno
sia una formula, nel qual caso memorizza questa e il semplicemente riferimento a questa. Ciò semplifica
risultato della formula. ODF memorizza sempre il il compito di implementazione della specifica oltre
valore numerico come attributo e la rappresentazione a renderla più breve. In OOXML ciò non accade. I
formattata nel body, così come la formula, se esiste, tag, i nomi degli attributi e le strutture sono diversi.
come attributo. Ciò significa che ODF memorizza Ci sono alcune analogie di formattazione di celle che
dati ridondanti. Un’argomentazione alla base di ciò è hanno un formato variabile. Tuttavia, non sono me-
che benché sia un po’ più complicato da creare, è mol- morizzate come parte dei dati della tabella ma nel file
to più facile da leggere. Un programma che analizza “sharedStrings.xml”, rendendo la portabilità in pra-
il foglio di calcolo può estrarre facilmente o il valore tica molto difficile.
o il testo formattato, mentre in OOXML, l’estrazione
del testo formattato è decisamente complicato. L’altra
argomentazione ha a che fare con la consistenza nella Riepilogo delle differenze
specifica, che viene trattata nel prossimo paragrafo.
Una giustificazione al fatto che OOXML ometta que- Le differenze tra i formati riflette le rispettive filo-
sta ridondanza è che fare ciò crea file più grandi. sofie. L’enfasi di OOXML sembra essere posta sulla
LISTATO 6
<config:config-item-set config:name=”ooo:configuration-settings”>
<config:config-item config:name=”PrintPaperFromSetup” config:type=”boolean”>
false
</config:config-item>
<config:config-item config:name=”AddFrameOffsets” config:type=”boolean”>
false
</config:config-item>
<config:config-item config:name=”PrintLeftPages” config:type=”boolean”>
true
</config:config-item>
<config:config-item config:name=”PrintReversed” config:type=”boolean”>
false
</config:config-item>
<config:config-item config:name=”PrintTables” config:type=”boolean”>
true
</config:config-item>
<config:config-item config:name=”LinkUpdateMode” config:type=”short”>
1
</config:config-item>
</config:config-item-set>
17
Login Internet Expert n.66 Novembre/Dicembre 2007
speciale ODF/OOXML
LISTATO 7
<config:config-item-set config:name=”mso:compatability-settings”>
<config:config-item config:name=”SnapToGridInCell” config:type=”boolean”>
false
</config:config-item>
<config:config-item config:name=”WrapTextWithPunctuation” config:type=”boolean”>
false
</config:config-item>
<config:config-item config:name=”UseEastAsianBreakRules” config:type=”boolean”>
false
</config:config-item>
<config:config-item config:name=”AllowTableExpandBeyondMargin” config:type=”boolean”>
true
</config:config-item>
<config:config-item config:name=”EmulateWW8FootnotePlacement” config:type=”boolean”>
true
</config:config-item>
</config:config-item-set>
rappresentazione dei dati che le applicazioni Micro- tuttavia, rappresentare dei vantaggi competitivi di
soft Office utilizzano e sulla riduzione delle dimen- una applicazione rispetto a un’altra, quindi in qual-
sioni dei file per risparmiare spazio e migliorare le che modo tali informazioni devono essere incluse. Se
prestazioni, quella di ODF sull’interoperabilità, la un’applicazione salva i propri dati su un disco locale,
facilità di implementazione e l’accesso ai dati. successivamente, dopo il ricaricamento dei dati, è im-
Il risparmio di spazio nel file di OOXML viene “an- portante che queste impostazioni univoche sulla con-
nullato” dall’algoritmo ZIP del file contenitore che figurazione dell’applicazione vengano mantenute.
i formati utilizzano. Ciò riduce la ridondanza senza Quanto detto significa che è probabile che la rappre-
complicare i formati stessi. Inoltre, i miglioramen- sentazione di un documento sia leggermente diversa
ti in termini di prestazioni dei nomi di tag più cor- quando viene trasferito da un’applicazione all’altra,
ti sono trascurabili rispetto alla risorsa richiesta dal indipendentemente dal formato utilizzato. Tuttavia,
computer per recuperare i dati dal disco, da una sche- ciò non è importante se si considera il fatto che la
da di memoria o dalla rete. stessa applicazione office spesso effettua un rende-
Benché OOXML sia meglio concepito per l’utilizzo ring differente da una versione alla successiva, o an-
con i prodotti Microsoft Office, l’utilizzo di nomi di che che la stessa versione della stessa applicazione
tag significativi, di rappresentazioni esplicite dei dati office in esecuzione sullo stesso sistema operativo
e della consistenza in tutta la specifica renderà ODF effettua un rendering diverso in base alla macchina
più interoperabile e più facile nell’implementazione su cui è in esecuzione. Elementi periferici come i font
del formato in differenti scenari. installati e le differenti stampanti connesse possono
influenzare il rendering.
Impostazioni di configurazione uniche Se è richiesto un rendering preciso di un documen-
to ci sono standard appositi per fare ciò, in modo
Affinché venga adottato un formato aperto, esso particolare PDF. In queste circostanze non andreb-
deve rappresentare il mezzo di default per il salvatag- be utilizzato nessun formato di documento office
gio dei dati per le applicazioni che lo utilizzano. Ciò modificabile.
presenta un problema. Il problema che i progettisti della specifica devono
risolvere è come preservare queste impostazioni spe-
Il problema cifiche alle applicazioni in un formato aperto per file
di documento.
Una programma di manipolazione da ufficio, come
un word processor o un foglio di calcolo, presen- La soluzione di ODF
terà delle stranezze ad esso peculiari. Ad esempio,
Microsoft Word 2003 ha delle opzioni di compati- La soluzione di ODF è l’adozione di una tag di con-
bilità come “Spaziatura automatica come Word 95” figurazione. Un esempio è riportato nel Listato 6. Il
e “Converti caratteri backslash in simboli Yen”. Per particolare parametro di configurazione viene me-
lo stesso motivo, OpenOffice.org 2.0 Writer ha del- morizzato nell’attributo config:name, il tipo del valore
le opzioni per “Utilizzare la formattazione tabstop di del parametro nell’attributo config:type e l’imposta-
OpenOffice.org 1.1” e “Considerare lo stile di ritorno zione di configurazione nel corpo del tag stesso.
a capo nel posizionamento degli oggetti”. Queste op- Come si osserva nel Listato 6, tutti i parametri sono
zioni sono caratteristiche delle rispettive applicazioni anche racchiusi da un tag config-item-set che è speci-
e non hanno alcuna collocazione nell’interoperabili- fico all’applicazione, il che significa che valori config:
tà dei documenti stessi: altre applicazioni corrono il name identici per applicazioni differenti non andran-
rischio di non sapere come interpretarle. Possono, no in collisione.
18
Login Internet Expert n.66 Novembre/Dicembre 2007
speciale ODF/OOXML
Queste impostazioni univoche non hanno significato prio pannello. Benché l’applicazione potrebbe in
per le altre applicazioni, pertanto vengono ignorate teoria memorizzare i nomi dei tag e i valori associati,
quando caricano il documento e sono quindi irrile- non vi è alcun modo garantito di conoscere qual è il
vanti per ciò che concerne la funzionalità. tipo dell’attributo, rendendolo molto più difficile da
Ecco un possibile scenario. In futuro, potrebbe essere presentare e pressoché impossibile da modificare con
fattibile per le applicazioni ODF-compatibili creare qualsiasi validazione.
un pannello di configurazione “generico” o “alieno”
nelle opzioni di impostazione che memorizza e elen- Interoperabilità e impostazioni di
ca semplicemente le impostazioni di configurazione configurazione
incognite che rileva. Il tag stesso indica di che tipo di
impostazione si tratta in una forma leggibile per gli Se Microsoft adottasse ODF per Office, potrebbe
umani, teoricamente quindi modificabile. Quando comprendere tutte le proprie impostazioni univoche
il documento viene salvato per essere trasferito tali nel modo in cui la specifica è definita al momento.
impostazioni potrebbero essere incluse nel file. Ciò L’esempio precedente potrebbe essere rappresen-
significa che se una persona crea un documento, im- tato come mostrato nel Listato 7. Benché queste
posta una propria configurazione dell’applicazione e impostazioni sarebbero comunque aliene ad applica-
poi trasferisce il tutto ad una seconda persona che, a zioni non Microsoft Office potrebbero essere facil-
sua volta, modifica il documento utilizzando un’ap- mente memorizzate e riprodotte nel momento in cui
plicazione diversa, lo salva e glielo restituisce, la pri- il file viene salvato.
ma persona dovrà essere in grado di modificare il file Se OpenOffice.org adottasse OOXML, invece, al mo-
e le impostazioni univoche della configurazione del- mento non vi è alcun modo per cui possa aggiungere
l’applicazione dovranno essere state mantenute. le proprie impostazioni di configurazione utilizzando
lo standard.
La soluzione di OOXML
Conclusioni
OOXML ha scelto questa strada: piuttosto che creare
un tag di configurazione definibile dall’applicazione, Gli standard in genere nascono per garantire l’inero-
esiste un unico tag per ciascuna impostazione. Ecco perabilità e gli standard riguardanti il formato aperto
un esempio: per file di documento non dovrebbero essere diffe-
renti. Lo scopo è che qualcuno nello stato A che lavo-
<w:compat> ra per un’azienda B utilizzando un prodotto C possa
<w:doNotSnapToGridInCell/> scambiare documenti con qualcun altro di uno stato
<w:doNotWrapTextWithPunct/> D che lavora per una compagnia E utilizzando un
<w:doNotUseEastAsianBreakRules/> prodotto F senza preoccuparsi di chi o cosa A, B, C,
<w:growAutofit/> D, E, F rappresentino in realtà. Semplicemente, tutto
<w:footnoteLayoutLikeWW8/> funziona, senza bisogno di preoccuparsi se un singolo
</w:compat> produttore continuerà o meno ad investire nello svi-
luppo della propria office suite, poiché potrà comun-
Ci sono ben oltre un centinaio di questi tag definiti que essere adottato un qualsiasi altro software di altro
nella specifica. produttore al suo posto.
Benché la versione di OOXML a giudicare dalle
apparenze sembri più semplice, introduce ulteriori ODF è stato creato utilizzando gli standard esistenti,
complicazioni per l’adozione dello standard. Attual- pensando all’interoperabilità, attraverso consultazio-
mente, le sole impostazioni univoche all’applicazione ne pubbliche e lunghi periodi di progettazione per
contemplate sono quelle applicazioni che gli autori raggiungere lo scopo prefisso. I benefici di questo
dello standard hanno deciso di includere, quelle delle metodo sono evidenti se si esaminano i formati risul-
suite Microsoft Office. Affichè altre applicazioni sia- tanti stessi, implementati da un vasto numero di pro-
no aggiunte, nella specifica dovrebbero essere definiti dotti office la cui lista sta ancora crescendo.
ulteriori nomi di tag, creandone potenzialmente mi- OOXML è stato progettato da un solo produttore,
gliaia e ciascuno non avrebbe nulla a che vedere con Microsoft, senza consultazioni pubbliche o input in
l’interoperabilità. fase di progettazione. È stato concepito per coesistere
Un nuovo produttore di applicazioni potrebbe risol- con i formati utilizzati dai prodotti proprietari.
vere ciò concependo in modo unilaterale dei propri
nomi di tag “fatti in casa” e utilizzando questi. Tut- Avendo esaminato i formati è difficile stabilire una
tavia questi tag corromperebbero la specifica. Inoltre, ragione tecnica per la quale i documenti di Micro-
siccome la specifica non definisce un metodo per po- soft Office non possano essere salvati e modificati
sizionare questi tag in un tag contenitore, creare dei usando ODF con un’affidabilità del 100%. ODF ha
propri tag potrebbe portare a una possibilità di colli- caratteristiche in grado di trattare tutti i “cavilli”
sione con altre applicazioni. di Microsoft Office, anche quelli del tipo “footnote-
Inoltre, per un’applicazione sembra non esista alcun LayoutLikeWW8”. OOXML al suo stato attuale non
modo ovvio di utilizzare OOXML per visualizzare è in grado di manipolare applicazioni diverse da Mi-
impostazioni di configurazione “aliene” in un pro- crosoft Office.
19
Login Internet Expert n.66 Novembre/Dicembre 2007
speciale ODF/OOXML
20
Login Internet Expert n.66 Novembre/Dicembre 2007
“Si fa presto a dire sito web”
di Paolo Frattini
Anno 2007
54 pagine a colori, formato A4
ISBN 9788881500222
solo
12,90
Eu ro
, t r u c c h i e c o n s i gli
Scopri regole e rnet
m u n ic a r e v i a I n t
per co
www.shopinfomedia.com
cutting edge
Ü di Solveig Haugland
Dovete creare un database, ma temete che sia co che mostra il numero medio di articoli per
troppo complicato o non avete gli strumenti ordine che i vostri clienti hanno acquistato
adatti? Niente paura: è facile, gratuito e an- durante le festività.
che utile. Utilizzate la suite office gratuita
OpenOffice.org per utilizzare i vostri dati in
attività di mailmerge, interrogazioni o utili Che tipo di database creare?
analisi della vostra attività.
Una volta deciso di creare un database, la
strada da seguire sembra semplice. Da menu,
Qual è il problema nel creare un basta scegliere:
database?
File à New à Database
Non tutti hanno necessità di un database.
Ma, prima o poi, chiunque debba tener trac- Tuttavia, rimane un’ultima questione da af-
cia e recuperare informazioni importanti ne frontare: che tipo di database creare? Con-
trarrà un vantaggio dall’averne uno. I data- nettersi direttamente al proprio database
base servono a memorizzare dati, natural- Oracle (questa è la strada migliore solo se
mente, ma il vantaggio è nel permettervi di siete o avete a disposizione un “guru” su
estrarre i dati che ci servono e nel visualiz- Oracle)? Esplorate alcune delle scelte più
zarli o stamparli nel modo in cui si vuole. Ad semplici come i fogli di calcolo oppure, se
esempio, una volta che si ha un database, si siete ben informati o dei medium, scegliete
possono, ovviamente, organizzare dei mai- l’opzione (del tutto invisibile) di importazio-
ling con il mailmerge: che si tratti di una ne dei dati esistenti?
lettera a ciascuna delle 500 persone che avete
incontrato a una conferenza sul software free Se siete un nume dei database e vi va di spen-
o di stampare le etichette per ciascuno degli dere del tempo concentrati su un database …
870 backup legali dei DVD che possedete. I beh, si può fare qualsiasi cosa si voglia. Se si
database sono anche necessari per l’imposta- vogliono ottenere i maggiori risultati con le
zione di form di inserimento dati o di visua- minori difficoltà, ecco le due soluzioni che
lizzazione dei dati; per la creazione di rela- raccomando.
zioni tra le tabelle in modo possiate stampare
i dati collegati, o per la creazione di un elen- n Mettete i dati in un foglio di calcolo, poi
22
Login Internet Expert n.66 Novembre/Dicembre 2007
cutting edge
23
Login Internet Expert n.66 Novembre/Dicembre 2007
cutting edge
Cosa non si può fare con questo tipo di 1. File à New à Database
database
2. Nella prima finestra, scegliere di creare un nuovo
Ci sono alcune caratteristiche che non sono disponi- database. Premere “Next”.
bili ma che potrebbero essere necessarie. Ad esem-
pio, non si possono utilizzare le funzioni che possono 3. Lasciare le checkbox con le selezioni di default e
indicarvi, per ogni fattura, quale è stata in media la premere “Finish”.
quantità totale nella fattura. Non si possono creare
form per l’immissione dei dati. Non si può eseguire il 4. Attribuire un nome al database e premere “Save”.
join di due tabelle per mettere in relazione i dati. Ma
si possono creare query e report e form di visualizza- 5. Appare il database (Figura 3).
zione dei dati. Per creare il form cliccare l’icona For-
ms sulla sinistra della finestra di editing del database
24
Login Internet Expert n.66 Novembre/Dicembre 2007
cutting edge
25
Login Internet Expert n.66 Novembre/Dicembre 2007
cutting edge
FIGURA 5 Verifica delle impostazioni di conversione del file di testo sulla destra scegliere
“Document” invece
di “None” e si ve-
dranno i dati. Chiu-
dere il database e
salvare le modifiche
(Figura 6).
Aggiunta di
ulteriori tabelle o
pasting dei dati in
una definizione di
tabella
Basta ripetere il pro-
tabella e scegliere di aggiungere sia i dati sia la de- cesso di pasting con un altro insieme di dati.
finizione, o solo la definizione se si intende modi-
ficare notevolmente la definizione della tabella. Si
può anche scegliere
di creare un nuovo
campo che fungerà FIGURA 6 Visualizzazione e salvataggio della tabella e del database
da chiave primaria.
È buona idea in-
collare prima solo
la definizione, se
si vuole impostare
uno dei campi che
si stanno incollan-
do come chiave pri-
maria. Quindi in-
collare nuovamente
ma solo i dati.
7. Aggiungere i cam-
pi che si vogliono
inserire nella ta-
bella, poi premere
“Next”.
8. Apportare le even-
tuali modifiche
alle definizioni dei
campi. Cliccare
“Create”.
9. La tabella apparirà
nel database. Sele-
zionare la tabella e
26
Login Internet Expert n.66 Novembre/Dicembre 2007
cutting edge
Sottolineerei che
con tutti i dati
bisogna essere
certi che siano
impostati cor-
rettamente nel
foglio di calcolo
prima di incol-
larli. Accertatevi
che i nomi del-
le colonne siano
corretti e che i
dati siani suf-
ficienetemente
granulari. Inol-
tre, sembra che
la creazione della
chiave primaria
nella prima fine-
stra del wizard,
quando viene ri-
chiesto, è il solo
modo per farlo.
Se in seguito si
Modifica della definizione della tabella vuole modifi-
carla, non si può fare, perché la tabella contiene già
Cliccare con il tasto destro sul nome della tabella e i dati. Un modo per aggirare questa limitazione po-
scegliere “Edit”. trebbe essere di incollare prima solo la definizione,
non impostare l’ID come chiave primaria quando
Si vedrà quindi la vista di progettazione, in cui si pos- viene richiesto e poi impostare il campo appropriato
sono modificare alcuni aspetti della definizione. Ad come chiave primaria modificando la definizione del-
esempio, per creare un campo auto-valore, basta ren- la tabella. Successivamente, incollare i soli dati.
derlo di tipo Integer e poi in basso nell’area di lavoro
scegliere “Yes” per AutoValue (Figura 7).
Conclusioni
Se si vuole modificare la chiave primaria, cliccare con
il tasto destro sul campo che si vuole rendere chia- Questo processo sottolinea un concetto generale sul-
ve primaria e selezionare Set Primary Key. Nota: ciò le caratteristiche avanzate di OpenOffice.org: in so-
funziona solo se si sta incollando solo la definizione, stanza, molte cose sono possibili ma non altrettanto
non la definizione e i dati. ovvie. Se non vedete un pulsante o una checkbox re-
lativa a qualcosa nell’interfaccia, ciò non significa che
non sia possibile. Continuate a cercare.
Aggiornamento dei dati
Versione italiana pubblicata su licenza di The Open Mind
Per aggiungere i dati, incollare i nuovi dati nello stes- Company
so modo utilizzato prima: selezionare i dati e sceglie-
re “Paste”. Nella finestra che appare, basta scegliere
Note Biografiche
“Append data” e ripetere le stesse scelte già fatte pri-
ma. Solveig Haugland ha lavorato per 16 anni come formatrice,
sviluppatrice di corsi e scrittrice tecnica per l’industria
In alternativa, fare doppio clic sul nome della tabella high-tech (Microsoft Great Plains, Sun Microsystems,
BEA). Attualmente, è un’istruttrice e scrittrice di StarOffice
e modificare o aggiungere i dati digitando.
e OpenOffice.org. E’ anche co-autrice, insieme a Floyd
Jones, di tre libri: Staroffice 5.2 Companion, Staroffice 6.0
Un ulteriore approccio, se è necessario effettuare Office Suite Companion and OpenOffice.Org 1.0 Resource
molti aggiornamenti, è creare un form di data-entry. Kit, pubblicati da Prentice Hall PTR. Il suo quarto
Cliccare l’icona Forms sulla sinistra dell’area di mo- libro, OpenOffice.org 2.0 Guidebook, è disponibile su
difica del database e utilizzare il wizard dei form per Amazon.come e su Cafepress, Per avere suggerimenti su come
creare il form. Assicuratevi di indicare, quando viene utilizzare OpenOffice.org o StarOffice, è utile visitare il suo
richiesto, che il form serve sia per la visualizzazione blog: http://openoffice.blogs.com
27
Login Internet Expert n.66 Novembre/Dicembre 2007
“Algoritmi Genetici in .NET”
di Fabio Fabozzi
Anno 2008
100 pagine, formato 17x24 cm
ISBN 9788881500314
solo
15,00
Euro
www.shopinfomedia.com
solutions
Il pattern MVC
e le librerie DisplayTag
Prima Parte
Ü di Luigi Santangelo
29
Login Internet Expert n.66 Novembre/Dicembre 2007
solutions
FIGURA 1 Le componenti del pattern MVC Quando si sviluppano questo tipo di applicativi è per-
tanto necessario che siano rispettati certi requisiti:
30
Login Internet Expert n.66 Novembre/Dicembre 2007
solutions
Un pattern rappre-
senta una soluzione
ottimale a un pro-
blema ricorrente
31
Login Internet Expert n.66 Novembre/Dicembre 2007
solutions
<taglib>
<taglib-uri>http://displaytag.sf.net</taglib-uri>
<taglib-location>/WEB-INF/displaytag-{taglibversion}.tdl</taglib-location>
</taglib>
delle pagine jsp, tramite il quale avviene lo scambio in WEB_INF e aggiungere il codice del Listato 1 in
di parametri e di oggetti. La directory service, invece, web.xml.
rappresenta il Model. Contiene una serie di file java
che implementano la logica di business dell’applica-
zione, accedono ai dati e ritornano le informazioni, Modifiche all’applicativo e deploy
sotto forma di oggetti, al Controller. In una applica-
zione di business, queste classi potranno fare acces- È possibile apportare modifiche all’applicativo im-
so al data layer, ad esempio, tramite hibernate oppu- portando i sorgenti in un progetto Eclipse: dalla voce
re tramite JDBC. Nel nostro esempio, allo scopo di di menu “File” importare un progetto esistente nel
rendere semplice l’applicativo, i data business non workspace. Come root directory indicare il path della
saranno informazioni permanenti memorizzati su radice della nostra applicazione quindi confermare e
un RDBMS ma semplicemente gestiti attraverso de- ultimare l’operazione. I file sorgenti saranno visibili
gli oggetti Bean (la cui classe è definita nella omoni- nella source folder src.
ma directory). In questo modo abbiamo nettamente Dopo aver apportato modifiche, il progetto dovrà es-
separato la logica di business dal presentation layer, sere compilato. L’utility ant, attraverso il build.xml
realizzando un’applicazione che rispetta la filosofia provvede alla compilazione dei sorgenti java e alla
del pattern MVC. creazione dei file jar, war ed ear. Quest’ultimo, che
La struttura del file system dell’applicativo comun- contiene i primi, dovrà essere successivamente copia-
que contiene anche altre directory, quale la target to dentro la directory deploy dell’application contai-
(che riproduce la stessa struttura della directory src ner. L’applicativo potrà pertanto essere invocato tra-
ma, a differenza di quest’ultima, contiene i binari mite browser all’indirizzo http://localhost:8080/dt_mvc
dei file java) e la directory build utilizzata tempora- dove la porta 8080 rappresenta la porta su cui Jboss ha
neamente da ant allo scopo di creare un unico file ear eseguito il bind.
che verrà poi spostato dentro l’application container.
Ovviamente, saranno necessari anche altri file quale
il file build.xml (letto da ant durante la generazione Conclusioni
dell’ear) e i file descrittori di deploy (application.xml,
jboss-web.xml e web.xml) contenuti dentro la di- È buona norma, nello sviluppo di applicativi com-
rectory deploymentdescriptor, indispensabili per il plessi, l’utilizzo di metodologie standard di program-
deploy su JBoss. mazione la cui assenza potrebbe portare, tra l’altro, a
L’applicazione d’esempio genera una collection di og- un rapido aumento delle difficoltà nel mantenimen-
getti contenenti informazioni su PC rappresentando- to dell’applicativo. L’utilizzo del pattern MVC risul-
li successivamente in una forma tabellare. Per il ren- ta essere pertanto fortemente consigliato durante lo
dering della tabella utilizzeremo le librerie displaytag sviluppo di enterprise application. Nel prossimo ar-
che, a tale scopo, abbiamo inserito in web/WEB-INF/ ticolo vedremo come possiamo utilizzare i tag delle
lib. I file presenti in tale directory, verranno copiati librerie displaytag per rappresentare dati strutturati
da ant all’interno del WEB-INF/lib del file war ge- in formato tabellare.
nerato. Si può notare come dentro la directory web/
WEB-INF/lib sono presenti altre librerie quali
n commons-logging Riferimenti
n commons-lang
n commons-collections http://java.sun.com/blueprints/patterns/MVC-
n commons-beanutils detailed.html
n log4j http://displaytag.sourceforge.net/11/index.html
n itext (opzionale, se si vuole eseguire l’export in
pdf/rtf)
Note Biografiche
In alternativa avremmo potuto inserire queste libre-
rie dentro la variabile d’ambiente CLASSPATH in Luigi Santangelo si occupa di amministrazione dei sistemi
modo da renderli disponibili all’application server. Linux, di network e di sviluppo di enterprise application
Solo nel caso in cui si utilizza JSP1.1 sarà inoltre ne- in Java basati sulla metodologia MDA. Attualmente lavora
presso l’Università degli Studi di Pavia.
cessario copiare il file displaytag-{taglibversion}.tld
32
Login Internet Expert n.66 Novembre/Dicembre 2007
“Architetture Enterprise
Metodologie di disegno e progettazione”
di Alessandro Sinibaldi
Anno 2008
350 pagine, formato 17x24 cm
ISBN 9788881500352
solo
49,00
Eu ro
Se siete tra quelle persone a cui è sempre piaciuto smontare le cose per vedere come sono
fa�e, allora questo libro è per voi. Fare gli archite�, di qualsiasi campo si tra�, vuol dire
cercare di coniugare due aspe�: uno tecnico e uno crea�vo.
Quello tecnico, perché l’archite�o pensa alla stru�ura delle cose, a come sono composte
da par� più piccole e a come queste interagiscono fra loro per far muovere un corpo com-
plesso. Tu�o questo mi è sempre sembrato affascinante. L’aspe�o crea�vo è dovuto al fa�o
che un archite�o, quando è mol� anni che fa il suo lavoro, sviluppa una specie di senso
este�co di quello che fa. Vedere le cose muoversi in armonia ed evolvere è sicuramente
una grossa soddisfazione. L’importante è capire i principi fondamentali del funzionamento,
poi, i pezzi possono essere assembla� in miliardi di modi diversi e dar vita ad un numero,
ancora maggiore, di situazioni e stru�ure diverse. Lo stesso accade ad un archite�o IT.
“Architetture Enterprise”
Ordinalo su
www.shopinfomedia.com
solutions
NetCrunch
Ü di Francesco Pentella
L’attuale tecnologia di rete richiede sistemi ste sempre più dedicate, per esempio con-
che permettano di tenere sotto controllo i sente il monitoraggio proattivo, l’inventario
comportamenti funzionali al fine di soddi- hardware e software, la diagnostica TCP/IP,
sfare con maggiori decisioni richieste sem- la cosiddetta reportistica e sistemi d’allar-
pre più stringenti di protocolli nati per for- mi, consente, inoltre, la mappa di routine e
nire all’utenza soluzioni su misura. Queste viste. È garantito il suo accesso tramite web
esigenze necessitano dell’adozione di stru- browser.
menti di monitoring e di verifica che per- Ma AdRem con NetCrunch vuole fornire
mettono di monitorare la rete con le applica- qualcosa in più; infatti, non si limita a con-
zioni ad essa associate. trollare le prestazioni di una rete e la sua
Senza dubbio NetCrunch è uno strumento eventuale disponibilità o la verifica della
che permette di apportare al lavoro quoti- presenza di host, servizi e applicazioni, ma,
diano degli amministratori di rete o di tec- accanto a tutto questo, per le sue diverse at-
nici miglioramenti in termini prestazionali tività fornisce differenti opzioni di notifica
e funzionali per una corretta gestione della (via e-mail, pager, ICQ, SMS o SNMP), log di
rete. eventi e strumenti diagnostici tra cui trace-
La casa AdRem propone di soddisfare la ri- router, bandwidth e port scanner di iTools.
chiesta di monitoraggio proattivo, la sua ve- NetCrunch risulta versatile e configurabile.
rifica in tempo reale, permettendo di indivi- È possibile, per esempio, monitorare le di-
duare e costruire non solo la mappa topologi- pendenze di rete esistenti, disabilitare mo-
ca e fisica di una rete, ma anche di effettuare mentaneamente il monitoring di un nodo o
una scansione guidata dei nodi utilizzando gruppi di questi e personalizzare la repor-
i vari protocolli disponibili quali SNMP e tistica. È compatibile con diversi browser
ICMP. quali internet Explorer (dalla versione 5.5),
FireFox, Mozilla o Netscape.
Caratteristiche di NetCrunch
Il prodotto di casa AdRem risulta installabi-
Il prodotto individua e mappa la topologia di le sia come applicazione sia come servizio. In
una rete, sia essa logica che fisica. NetCrun- aggiunta permette il rescan dei domini Win-
ch dispone di diverse caratteristiche che per- dows e di scegliere il servizio per il testing
mettono di soddisfare applicazioni e richie- della disponibilità del nodo.
35
Login Internet Expert n. 66 Novembre/Dicembre 2007
solutions
Se proviamo ad elencare i vari benefici che NetCrun- FreeBSD, HP-UX, Solaris e AIX. È inclusa la pos-
ch è in grado di fornire, allora non possiamo che rag- sibilità di gestione e manutenzione. Esiste la possi-
grupparli in quest’ordine: bilità di avere differenti azioni di monitoring per i
diversi server presenti. Per esempio per server basati
n Consente il monitoring e permette la risposta in su Windows, NetCrunch permette di controllare ogni
tempo reale dello stato dei principali servizi di aspetto dell’analisi delle prestazioni via SNMP con i
rete, per esempio FTP o POP3, e applicazioni contatori associati e la personalizzazione dei grafici
quali Ms Exchange, Oracle, MySQL; delle prestazioni e il confronto tra le variabili di si-
n È integrabile nelle suite di lavoro comunemente stema tra i server.
utilizzate;
n Consente di massimizzare le prestazioni dei siste- È possibile definire differenti livelli di sicurezza e
mi e ne consente la loro identificazione; contatori personalizzati per consentire l’analisi del-
n È perfettamente compatibile con la suite SNMP le prestazioni ed è garantita la possibilità di termina-
nelle sue tre varianti: v1, v2 e v3 ed è possibile zione a comando di processi in automatico, anche in
modificare in remoto e, in automatico, i parametri remoto. E’ possibile analizzarne lo stato per fare dei
SNMP per predisporre azioni correttive. diagnostici mirati e più efficienti e di assegnare una
priorità alle azioni di monitoraggio.
NetCrunch permette il monitoraggio proattivo del-
le reti LAN e WAN. Questo tipo di monitoraggio NetCrunch permette il monitoraggio delle applicazio-
consente di impostare soglie critiche di sicurezza e ni presenti nella rete. Questo tipo di attività si esplica
controllare e generare allarmi per svariati dispositivi attraverso l’esame, in tempo reale, delle prestazioni
presenti nella rete. Le soglie critiche possono riguar- delle varie applicazioni presenti sui server Windows
dare la banda impiegata su ogni dispositivo. Il moni- e NetWare. L’utente, o meglio l’amministratore, può
toraggio, oltre a riguardare gruppi di continuità, può aggiungere nuovi servizi o personalizzare quelli già
essere parametrico su risorse hardware utilizzate nel- presenti quali FTP, HTTPS, SMTP, IMAP e molti
la rete: spazio sui dischi, statistiche dei buffer di me- altri. È possibile tracciare lo stato dei servizi di Win-
moria, utilizzo della memoria rispetto a delle soglie dows e traccia, per ogni applicazione presente nel si-
in precedenza impostate. I dispositivi che possono stema, le prestazioni, tenendo conto degli indicatori
essere monitorati abbracciano tutte le possibili appli- delle applicazioni che supportano le trap SNMP.
cazioni: router, hub, switch, WAP, stampanti.
NetCrunch, infine, permette la visualizzazione del-
Il prodotto consente il monitoring dei server nelle la rete attraverso la scansione guidata dei nodi con
sue differenti accezioni: Unix, NetWare, Microsoft, i protocolli SNMP e ICMP. È possibile definire, in
36
Login Internet Expert n.66 Novembre/Dicembre 2007
solutions
base alle diverse esigenze dell’amministratore di rete, talogo dell’insieme sotto esame. La possibilità di ave-
nuove viste della rete secondo diversi criteri selezio- re sempre sotto controllo l’intero sistema potenzia la
nabili dall’utente, per esempio per nodo, per indiriz- produttività degli amministratori di rete, dei tecnici
zo IP, ruolo aziendale o altre impostazioni. Il tool è in che devono sempre rispondere alle mutate esigenze
grado di effettuare visualizzazioni in base alle dispo- di funzionamento della rete stessa. L’interazione è
sizioni dei nodi delle mappe, fisiche e logiche, di una abbastanza semplice; infatti, con pochi passi, attra-
rete o mappe di routine, dei domini, dei gruppi di verso la sua interfaccia, è possibile estrarre dal tool la
lavoro e secondo l’albero delle cosiddette eDirectory. fotografia in tempo reale delle prestazioni e delle ri-
NetCrunch è abbastanza versatile sotto questo pun- sorse utilizzate in un determinato momento. In que-
to di vista perché permette di identificare e generare sto modo è possibile rimuovere o estrarre singoli di-
mappe per differenti sistemi: da Windows a NetWa- spositivi per provare e verificare il comportamento in
re, da HP-UX a Solaris, da 3Com switches alle stam- tempo reale. La particolarità di disporre di differenti
panti. atlas, uno per configurazione, permette di tenere sot-
to controllo la rete stessa.
37
Login Internet Expert 66 Novembre/Dicembre 2007
solutions
Processori
Intel Pentium 4 o AMD Athlon64 Dual-core Intel Pentium D/Core2 Duo o AMD Athlon64
X2 o faster models
Memoria
512 MB di RAM 1 GB di RAM
Monitor
1280x1024 pixels (SXGA) Widescreen – 1680x1050 pixels (WSXGA+) o maggiori,
True Color (32 bit)
High Color (16 bit)
Web Browser
Internet Explorer 5.5 Internel Explorer 6.0 o superiore, Firefox o Netscape
Firefox o Netscape
38
Login Internet Expert n.66 Novembre/Dicembre 2007
solutions
39
Login Internet Expert 66 Novembre/Dicembre 2007
solutions
41
Login Internet Expert n.66 Novembre/Dicembre 2007
solutions
FIGURA 1 Tilda
di KDE e Take Screenshot di Gnome sono strumenti Non ci lanceremo in un confronto dettagliato dei tool
validi per ciò che fanno. Tuttavia, talvolta è necessa- di cattura screenshot disponibili, grafici o a riga di
rio catturare degli screenshot in modo rapido senza comando. È sufficiente che, alla fine di questo artico-
alcun overhead (specialmente se si sta utilizzando un lo, riesca a dimostrare la potenza e l’utilità di Scrot:
windows manager “leggero” su una macchina con nonostante sia un tool a riga di comando, offre al-
prestazioni relativamente povere). In tal caso, si può l’utente un eccellente tool di cattura screenshot con
utilizzare “Scrot”. potenti opzioni che si adattano a gran parte delle ne-
cessità. Per visualizzare i comandi che Scrot supporta
basta digitare da terminale man scrot.
Benvenuti in Scrot
Scrot (SCReenshOT) non sarà probabilmente prein- Modalità di esecuzione di Scrot
stallato nella propria distro; pertanto, come sempre,
è il caso di una rapida visita ai vari repository di sof- Scrot è un tool a riga di comando (è scritto in C e
tware. Se con ciò non si ottiene alcun risultato sare- utilizza la libreria imlib2); pertanto è ovvio che lo
mo in grado di scaricare un tarball del sorgente o una eseguirete in una finestra console da una sessione X-
versione binaria precompilata dal sito ufficiale http: windows.
//www.linuxbrit.co.uk/scrot/. Sennò si può sempre Ho constatato che per poter ottenere rapidamente de-
ottenerlo da Klik (http://www.scrot.klik.atekon.de/) gli screenshot e per evitare di alternare l’utilizzo di
che lo installerà per un’ampia gamma di distro. Ba- mouse e tastiera, sia utile aver installato YaKuake, di
sta seguire le istruzioni sul sito Web per consentire ai cui si è parlato prima. Una volta installato e esegui-
browser Konqueror e Firefox di utilizzarlo. to, la finestra terminale può apparire e sparire molto
42
Login Internet Expert n.66 Novembre/Dicembre 2007
solutions
Si decolla!
Non solo la NASA può eseguire un lancio con un
conto alla rovescia. Se vi piace sfruttare le caratteri-
SLAX è perfetto stiche più avanzate dei programmi, si può eseguire
un’elegante funzionalità di conto alla rovescia ag-
per mostrare la po- giungendo un semplice parametro a questo comando.
tenza di GNU/Linux Basta digitare:
43
Login Internet Expert n.66 Novembre/Dicembre 2007
solutions
combinare questa conoscenza con la potenza di Scrot. grafica GUI è stato danneggiato durante la scrittura
Una volta catturato uno screenshot, potrebbe essere di questo articolo.
necessario apportare delle modifiche: modificare il
formato, comprimere, tagliare, ridimensionare, ecc. 4. Come eseguire il backup del Master Boot
Di norma, si esegue un clic destro sull’immagine sal- Record (MBR)
vata e si seleziona lo strumento grafico preferito per
svolgere il lavoro, o basta aprire il pacchetto di grafica Il backup, come la sicurezza, è un banale mantra nel
e navigare fino alla directory utilizzata; tuttavia una mondo GNU/Linux, ma anche il più esperto utente,
piccola magia dalla riga di comando può fare ciò au- per una qualsiasi ragione, ha pensato di eseguire re-
tomaticamente. Per combinare assieme l’esecuzione golari backup solo dopo essere stato colpito da un disas-
di più comandi si utilizza la combinazione di carat- tro. È una storia molto familiare a tutti. Gli ammini-
teri &&. Ciò significa che se il comando precedente è stratori di sistema, a causa del loro lavoro, avranno
stato eseguito senza produrre errori, verrà eseguito il questo imperativo scolpito sulle proprie lapidi. Per
comando successivo. In questo caso si può accodare il loro è una regola di vita. Gli utenti desktop, essendo
nome del pacchetto di grafico preferito per la modifi- responsabili solo di sé stessi, possono permettersi di
ca dello screenshot appena catturato con Scrot. essere un po’ più incerti su queste cose. Se tutto va
“gambe all’aria” non c’è che da prendersela con sé
Pertanto, mettiamo assieme queste opzioni in un uni- stessi.
co comando e eseguiamolo: È necessario effettuare il backup di molte cose: i file
nella propria directory home, i file di configurazio-
scrot -d 5 -q 95 -t 30 screenshot.jpeg -b -s && ne in /etc (ed esistono molti eccellenti tool GUI per
gwenview screenshot.jpeg svolgere il lavoro) ma una delle cose più semplici e
migliori da fare è eseguire il backup del proprio Ma-
Fatto! Certo è un bel boccone, ma dopo averlo me- ster Boot Record (MBR). Una cosa è subire la perdita
morizzato Scrot è un software molto potente e utile o la corruzione di file, ben altro è non essere affatto
e indubbiamente i lettori possono escogitare molti in grado di eseguire il boot del proprio computer. Ciò
comandi che possono essere utilizzati in combina- che segue vi tirerà fuori d’impaccio.
zione con Scrot per estenderne l’utilità. Le uniche
funzionalità che sembrano assenti sono la capacità di
conversione dei formati delle immagini e la cattura Le maniere di Windows
di screenshot multipli. Per fare ciò dovrete utilizza-
re ImageMagick, che, fortunatamente, è preinstallato È altamente improbabile che siete arrivati a GNU/
con gran parte delle distro GNU/Linux. Linux a digiuno di conoscenze sui computer. Quasi
certamente, come me, ci siete arrivati da Windows;
quindi o avete installato GNU/Linux sostituendo
Cattura con ImageMagick Windows o avete deciso di optare per il dual boot.
Windows è un po’ a corto di computing etiquette: se
Benché questo articolo riguardi Scrot non posso resi- avete installato prima GNU/Linux su un disco ver-
stere dal concluderlo con un brevissimo “howto” su gine e avete poi proseguito con l’installazione di una
ImageMagick per la cattura di screenshot multipli in versione di Windows avrete fatto una brutta scoper-
un solo comando. Si tratta di una caratteristica che ta. Windows, senza alcun vostro permesso, calpesta
renderebbe Scrot completo ed è nota come “snap” il boot sector di GNU/Linux con pesanti scarponi
(ossia “scatto”). Basta accodare questo parametro al chiodati. La prima lezione è installare prima Win-
comando import di base e si possono catturare screen- dows!!!
shot multipli in base al numero che si specifica: Tuttavia, non è necessario il dual boot con Windows
per andare incontro a un disastro. Anche il dual boot
import -delay 20 -snaps 4 snapit.jpeg con diverse versioni di GNU/Linux può portare a
problemi di avvio. Nel caso migliore, una sola ver-
Preparate le schermate che volete catturare, minimiz- sione eseguirà il boot; o peggio, nessuna versione si
zatele tutte, digitate questo comando e poi utilizzate avvierà e vi ritroverete a fare furiose ricerche su Goo-
Alt+Tab per attivarle una per volta, cliccando su cia- gle per comprendere concisi e enigmatici messaggi di
scuna. (Si può digitare il comando nella casella Run errore di GRUB (GRand Universal Bootloader). Tal-
command come si è fatto per Scrot). Portatevi nella di- volta, i boot sector (comprese le tabelle delle partizio-
rectory in cui avete salvato e troverete gli screenshot, ni) possono corrompersi per motivi affatto compren-
che avranno come nome lo stesso prefisso (nell’esem- sibili. Qualsiasi sia il motivo, è necessario prepararsi
pio “snapit”) seguito da un numero, a partire da zero all’eventualità in cui GRUB non effettua una copia
(nell’esempio da 0 a 3, in totale quattro). Ovviamente, dell’MBR durante l’installazione.
si può specificare il numero di “scatti” e naturalmen-
te, come in Scrot, si può specificare il formato.
Backup
Per chi ha a cuore il benessere del software open-
source desidero assicurare che nessun pacchetto di L’MBR, come lo chiamerò d’ora in poi, è un segmento
44
Login Internet Expert n.66 Novembre/Dicembre 2007
solutions
di 512 byte del primo settore del disco rigido che si Ripristino dell’MBR
compone di tre parti:
Non ci sorprende che per poter ripristinare l’MBR sia
1. il codice di boot che occupa 446 byte; solo necessario invertire il comando originale con cui
2. la tabella delle partizioni che occupa 64 byte; lo si è salvato. Se siete riusciti a distruggere l’MBR
3. il cosiddetto boot code signature che occupa 2 byte. non sarete in grado di eseguire il boot, pertanto pote-
te utilizzare un CD live per accedere al disco rigido e
Questi numeri sono molto importanti. Qualsiasi di- leggere il backup da un supporto rimovibile, ad esem-
sattenzione o modifica impulsiva di queste informa- pio una memoria USB. Ecco il comando:
zioni renderà la propria macchina non avviabile o la
tabella delle partizioni illeggibile. Non è bello vedere dd if=/dev/sda/mbr_backup of=/dev/hda bs=512 count=1
un uomo maturo che piange. Siete avvisati!
L’essenza del comando di backup è dd, che sarà fami- Di nuovo, modificate sda perché corrisponda a dove
liare ad ogni amministratore di sistema, specialmente avete salvato l’MBR ed eseguite il comando come
a chi intende clonare un intero disco rigido. Per vi- root. Se volete distruggere del tutto l’MBR, compresa
sualizzare tutte le opzioni disponibili basta digitare la tabella delle partizioni, allora potete sovrascriverlo
man dd. Siccome vogliamo eseguire il backup solo dei con una serie di zeri:
primi 512 byte, dobbiamo accodare alcuni argomen-
ti al comando. Ecco il comando completo necessario dd if=/dev/zero of=/dev/hda bs=512 count=1
(ricordate di eseguirlo come utente root con su, o con
sudo per utenti Ubuntu): Se volete distruggere l’MBR ma lasciare intatto la ta-
bella delle partizioni basta modificare semplicemente
dd if=/dev/hda of=/home/richmondg/mbr_backup bs=512 512 con 446.
count=1 Ci sono, naturalmente, alternative che coinvolgono
l’utilizzo del CD di installazione in modalità “salva-
Ovviamente, dovrete sostituire la partizione in cui ri- taggio” (rescue mode) per reinstallare GRUB che han-
siede il vostro boot sector e anche utilizzare il vostro no lo stesso effetto (con l’ulteriore vantaggio di non
nome utente. Vediamo cosa abbiamo appena scritto. sovrascrivere la tabella delle partizioni) ma questo è
dd sta per “disk dump”, if significa “input file”, of un argomento a sé. Nel frattempo, l’utilizzo del co-
significa “output file”, bs significa semplicemente mando dd e dei suoi argomenti vi aiuterà a familia-
“byte” e count=1 indica al comando di eseguire l’ope- rizzare con altri comandi Linux e con la struttura dei
razione una sola volta. Ha senso salvare il risultato file. Padroneggiare la riga di comando comporta uno
in qualche dispositivo rimovibile, di solito uno stick sforzo di apprendimento ma può ripagare quando le
USB, nel qual caso bisogna modificare il percorso del cose vanno storte.
file e adattarlo in modo che
/home/richmondg/mbr_backup
Riferimenti
diventi, ad esempio:
SLAX
/dev/sda/mbr_backup [1] Download di SLAX - http://www.slax.org/
download.php
oppure basta copiare il risultato del backup originale [2] http://tinyurl.com/b4tc7
sul dispositivo esterno. [3] Souzione con SLAX 6 - http://slax.linux-live.org/
forum/viewtopic.php?p=75287#75287
[4] Moduli SLAX - http://www.slax.org/modules.php
Solo la copia dei primi 446 byte. Perché?
Terminali Quake-style
Questo può essere un suggerimento utile. Se nel co- [5] http://en.wikipedia.org/wiki/Quake-style_console
mando precedente si modifica 512 con 446 si salverà [6] http://www.softpedia.com/reviews/linux/
solo il boot sector, ma non la tabella delle partizio- YaKuake-Review-30782.shtml
ni. Perché si dovrebbe fare ciò? Il motivo è che se si
utilizzano 512 byte e per qualsiasi motivo in seguito Versione italiana pubblicata su licenza di The Open Mind
si modificano le partizioni e poi si ripristina l’MBR Company
questo non sarà più sincronizzato. Pertanto, se avete
apportato delle modifiche a una partizione dopo aver
eseguito il backup dell’MBR originale assicuratevi di
Note Biografiche
aggiornare la copia di backup.
Andrew Min è un giornalista, amante di Linux Kubuntu,
che collabora con diverse riviste online come Free Software
Magazine, Full Circle Magazine e Mashable.com
45
Login Internet Expert n.66 Novembre/Dicembre 2007
IN VETRINA
DB2 9 for Linux, UNIX, Cisco ASA, PIX, and FWSM GO! with the Internet
and Windows Firewall Handbook 2nd Ed. di S. Gaskin e R. Lawson
di G. Baklarz e P. Zikopoulos di D. Hucaby Prentice Hall
Prentice Hall Cisco Press 816 pp - 34,95 euro
1136 pp - 57,95 euro 912 pp - 52,95 euro ISBN 9780131956957
ISBN 9780131855144 ISBN 9781587054570
LOGIN 66
OFFERTE ABBONAMENTI
2007/2008
RIVISTE CARTACEE OFF
prezzo standard 1 anno 2 anni
€ 128.00 �
ERT
COMPUTER PROGRAMMING
DEV
€ 75.00
€ 75.00
€ 69.00
€ 69.00
�
� € 128.00 � A
VISUAL BASIC JOURNAL € 52.50 € 49.00 � € 90.00 �
Prez
LOGIN € 52.50 € 49.00 � € 90.00 �
zi v
JAVA JOURNAL € 52.50 € 49.00 � € 90.00 �
al
€ 312.00 € 250.00 � € 495.00 � 7/1 idi fino
/20
CP+DEV+VBJ+LOGIN+JJ
08 al
RIVISTE WEB
1 anno 2 anni
CP web + archivio € 50.00 € 45.00 � € 70.00 �
DEV web + archivio € 50.00 € 45.00 � € 70.00 �
VBJ web + archivio € 40.00 € 35.00 � € 60.00 �
LOGIN web + archivio € 40.00 € 35.00 � € 60.00 �
JJ web + archivio € 40.00 € 35.00 � € 60.00 �
CAP _____________ Città ___________________________________ Prov. ______ CAP ____________ Città _________________________________ Prov. _________
• I prezzi degli abbonamenti Web sono conprensivi dell’ IVA al 20% MODALITA’ DI PAGAMENTO
• I prezzi degli abbonamenti per l’estero sono maggiorati di spese di spedizione. � Allego fotocopia del Bonifico Bancario effettuato sul C/C 000000014804
CAB 25200 ABI 01030 Cin “A” - Monte dei Paschi di Siena - Agenzia di Perignano
• Gli abbonamenti decorrono dal primo numero raggiungibile. IBAN IT84A0103025200000000014804
Per attivazioni retroattive contattaci al numero 0587/736460 o invia una e-mail
all’indirizzo: abbonamenti@gruppoinfomedia.it � Allego fotocopia della ricevuta del versamento sul C/C Postale N.14291561 intestato
a: “Gruppo Editoriale Infomedia S.r.l. - Ponsacco” IBAN IT84X0760114000000014291561
Garanzia di riservatezza - Gruppo Editoriale Infomedia garantisce la massima riservatezza dei dati da lei forniti e la possibilità di richiederne gratuitamente la rettifica
o la cancellazione scrivendo a: Responsabile Dati - Gruppo Editoriale Infomedia Srl - Via Valdera P. 116 - 56038 Ponsacco (PI). Le informazioni custodite nel nostro
archivio elettronico verranno trattate in conformità alla legge 196/03 sulla tutela dati personali.
L’IVA sul prezzo dell’abbonamento cartaceo è assolta dall’Editore e non sussiste l’obbligo di emissione della fattura, ai sensi del D.M. 9 aprile 1993, art.1, comma 5;
pertanto, ai fini contabili, farà fede la sola ricevuta di pagamento; perciò la fattura verrà emessa solo se esplicitamente richiesta al momento dell’ordine.
Lei può dedurre il costo dell’abbonamento dal reddito d’impresa e dai redditi derivanti dall’esercizio di arti e professioni (artt. 54 e 56 del TUIR)