Anda di halaman 1dari 12

OFFICE

Utilizzare una
fonte dati da VSTO

In questo articolo vedremo come creare uno Smart Tag in ambiente Office
utilizzando la tecnologia .NET

di Emanuele Mattei

In questo articolo vedremo come collegare una • reparto, di tipo testo;


fonte dati – più precisamente un database creato
con Microsoft Access 2003 – ad un foglio di Excel, • piano, di tipo numero.
utilizzando la tecnologia Visual Studio Tools for Of-
fice, in modo del tutto visuale. La tabella Prodotto avrà quat-
tro campi:
Creazione della base dati
Ai fini del nostro esempio, si crei un nuovo da- • idprodotto, di tipo contatore
tabase in Microsoft Access, con le tabelle Settore e chiave,
e Prodotto.
Nella tabella Settore si creino quattro campi: • idsettore, di tipo numerico ed
in relazione con il campo id-
• idsettore, di tipo chiave e contatore; settore della tabella Settore;

• descrizione, di tipo testo; • prezzo, di tipo valuta (euro);

• nome, di tipo testo.


Emanuele Mattei è sviluppatore presso una società d’infor-
matica di Roma. Attualmente collabora con altri webmaster Una volta create le tabelle e le
al sito www.shareoffice.it il primo usergroup italiano dedicato relazioni, e valorizzate con i dati,
alla programmazione di Office, tramite la tecnologia .NET. Può
possiamo passare a Visual Stu-
essere contattato all’indirizzo email emattei@infomedia.it
dio 2005.

44 VBJ N. 77 - Settembre/Ottobre 2007


OFFICE

Creazione del progetto e


collegamento al database
Si apra Visual Studio 2005, dal
menu File selezioniamo Nuovo pro-
getto, nella parte indicante i tipi di
progetto selezioniamo Office, e tra
i modelli messi a disposizione sele-
zioniamo quello con la voce Cartel-
la di Lavoro Excel. Nella finestra
ci verrà chiesto se vogliamo crea-
re un nuovo documento o copiarne
uno esistente, lasciamo l’opzione
su Crea nuovo documento.
Verrà aperto l’ambiente di svilup-
po con l’interfaccia di Microsoft
Excel, dal menu selezioniamo la
voce dati, e poi la voce Aggiungi
nuova origine dati. Nella finestra
Figura 1
che viene aperta (Figura 1) sele-
zionare la voce Database, fate cli-
ck sul pulsante Avanti. Nella fine-
stra successiva fate click sul pulsante Nuova sta che fare click sul pulsante Test connessio-
connessione, e dalla finestra che viene aperta ne per verificare che tutto sia corretto e poi
(Figura 2) selezionare come origine dati il file sul pulsante Ok.
database Microsoft Access, mentre tramite il A video verrà visualizzato un messaggio che
pulsante Sfoglia ricercare il database Access ci chiede se vogliamo salvare una copia del
creato in precedenza; a questo punto non re- database nella cartella output, selezioniamo il
pulsante Si, per avere tutti i file in un’uni-
ca cartella.
Nella finestra successiva verranno visua-
lizzate le tabelle del nostro database; se-
lezionare la tabella Settore e selezionarne
tutti campi, mentre per la tabella Prodotti
selezioniamo tutti i campi Prezzo ad esclu-
sione del campo IdProdotto, come mostrato
in Figura 3. A questo punto fate click sul
pulsante Fine.

Impostare l’ambiente
Al termine del wizard, nella barra origini
dati troveremo un dataset, contenente due
tabelle; selezioniamo il campo descrizione
della tabella Settore; nella casella di riepilo-
go selezioniamo l’impostazione combo-box,
e trasciniamo il controllo nel foglio Excel.
Due righe sotto, scriviamo nella prima co-
Figura 2
lonna (cella A8) il testo “Nome prodotto”
e nella successiva cella (B8) trasciniamo,

N. 77 - Settembre/Ottobre 2007 VBJ 45


OFFICE

quello mostrato in Figura 4.


Così ad ogni cambiamento nella
combo-box, verranno modificati i
valori degli altri campi.

Effettuare delle prove


Dopo aver impostato i vari cam-
pi, non resta che eseguire il pro-
getto, tramite il pulsante F5: avvia-
mo il programma, e nel selezionare
le varie voci della combo-box, ve-
dremo cambiare i valori nelle va-
rie caselle.

Conclusioni
In questo breve articolo abbiamo
visto come tramite la tecnica del
Figura 3
data binding si possono gestire i
dati di un database in un foglio
Excel senza ricorrere alla stesura
dalla barra Origine dati, la casella denomina- di codice. Le funzionalità offerte
ta “Nome della tabella prodotto”, situata sot- dal nuovo ambiente di sviluppo Visual Studio
to la tabella Settore; nella successiva colonna Tools per Office permettono agli sviluppatori
(cella C8) scriviamo il testo “Prezzo” e nel- di creare potenti applicazioni per il pacchetto
la successiva cella di destra (D8) inseriamo, Microsoft Office 2003 con semplicità. Sul sito
dalla barra origine dati, il campo Prezzo della ftp di Infomedia (ftp://ftp.infomedia.it/pub/)
tabella Prodotto. L’aspetto dev’essere simile a trovate il codice sorgente dell’applicazione.

Figura 4

46 VBJ N. 77 - Settembre/Ottobre 2007


Prodotti & News

È online l’osservatorio sulla Antec presenta una nuova Serena migliora il Change
sicurezza informatica linea di prodotti Management
a risparmio energetico
È on-line da Ottobre il sito internet Serena Software ha presentato
dell’Osservatorio Nazionale per la La certificazione 80 PLUS® è un inno- Serena® Dimensions® Express™,
Sicurezza Informatica. vativo programma nord americano di strumento SCM (software configu-
L’indirizzo è www.osservatoriosicurezza incentivi che ha lo scopo di integrare i ration management) leggero per
informatica.org e sarà uno strumento computer da tavolo e i server con ali- sviluppatori, con caratteristiche pre-
in più che l’Osservatorio metterà a mentatori più efficienti dal punto di stazionali e funzionali pacchettizzate
disposizione di aziende, navigatori, vista del consumo energetico. Infatti, in modo tale da facilitarne l’utilizzo
giornalisti, per conoscere meglio le la maggior parte degli alimentatori ha e la messa in produzione. È basato
questioni inerenti alla sicurezza in- un’efficienza massima del 60-70%, e sulla tecnologia Serena Dimensions
formatica, alla tutela della privacy perde dal 30% al 40% dell’energia che 10 che ne facilita l’implementazione
on line, alla sicurezza nelle comu- consuma. La certificazione 80 PLUS® e l’adozione rapida.
nicazioni cellulari e wifi, alle truffe invece assicura un’efficienza minima Gli sviluppatori, in particolare i team
che utilizzano internet. pari all’80%, riducendo almeno della di sviluppo piccoli e agili, devono po-
metà la dispersione di energia e fa- tere trovare un equilibrio tra imple-
“Il nostro Osservatorio è attivo da cendo così risparmiare sui costi della mentazione rapida e usabilità da un
ormai un anno ed ha ottenuto non bolletta elettrica, della manutenzione lato, e controllo e gestione dall’altro:
pochi riconoscimenti al proprio del computer e del raffreddamento. Serena Dimensions Express risponde
lavoro. Abbiamo messo a dispo- I nuovi case di Antec costituiscono a queste esigenze.
sizione dei media e dei cittadini dunque un ottimo punto di parten- Dimensions Express fornisce capacità
importanti dati ed informazioni, za per la realizzazione dei sistemi di livello enterprise senza penalizzare
contribuendo a sensibilizzare gli conformi al programma statunitense la facilità d’uso. Gli utenti hanno i
utenti delle nuove tecnologie e Energy Star 4. vantaggi del supporto nativo del-
quindi prevenire tentativi di truffa Per maggiori informazioni sul pro- la piattaforma per il repository o
o di incursione nei sistemi infor- gramma Energy Star dell’UE, visitare workspace che preferiscono, del-
matici di aziende e privati. – ha il sito l’integrazione nativa con gli IDE più
dichiarato Mirko Gatto della Yarix www.eu-energystar.org/it/index.html importanti e di una terminologia
srl – Inseriremo sul nostro sito gli coerente e standard. L’integrazione
interventi ed i dati delle nostre I modelli della serie New Solutions IDE è profonda, ma non invasiva. Gli
ricerche che saranno a disposizione che sono stati aggiornati includo- strumenti di Configuration Manage-
gratuitamente, costituendo piano no: NSK1380, NSK1480, NSK2480, ment e di controllo delle versioni di
piano una vera banca dati on-line NSK3480, NSK4480, NSK4480B cui gli sviluppatori hanno bisogno
che potrà fornire una informazione (nero) e NSK6580. Il NSK1380, un sono parte integrante dell’interfaccia
corretta sui vari aspetti legati alla case microATX dal design estrema- IDE. Mentre gli sviluppatori appor-
sicurezza informatica. mente compatto, può essere utilizza- tano variazioni al codice sorgente,
to sia come computer da tavolo che Dimensions Express traccia, autentica
Ad esempio uno degli ultimi studi come postazione mobile per giochi. e gestisce il controllo delle versioni
che abbiamo divulgato, sui ten- Il NSK2480 è un case microATX così che, in caso di necessità, possano
tativo di incursione provenienti per computer da tavolo, mentre il tornare facilmente alla configurazio-
dalla Cina per inserirsi sui segreti NSK1480 è un case per media center ne precedente.
aziendali di imprese italiane, ha di fascia economica. Il NSK3480 è Gestire i team di sviluppo e le va-
permesso a molti di conoscere una mini torre per PC da tavolo equi- riabili di progetto è molto difficile,
questo fenomeno e di correre ai paggiato per schede madri microATX. virtualmente impossibile senza stru-
ripari per non essere più esposti Infine i modelli NSK4480, NSK4480B menti adeguati. Il supporto completo
al rischio. In questo modo abbiamo e NSK6580 offrono gli standard di un allo sviluppo in parallelo reso possi-
contribuito concretamente a far case ATX, in piccolo e medio formato. bile da Dimensions Express elimina
crescere la consapevolezza di molti L’intera gamma di case New Solution le complessità, in quanto fornisce
imprenditori.”. è dotata di alimentatori certificati 80 branching e merging a livello di item
PLUS®, ed è già disponibile presso e di progetto.
Sul sito saranno attivati nei pros- i maggiori rivenditori, e-tailer e di- Dimensions Express è fatto per essere
simi mesi anche alcuni servizi per stributori, ad un prezzo che va dai implementato e messo in produzione
i navigatori: fin da subito è pos- 49,00€ ai 114,00€. Antec fornisce in modo veloce e facile. La confi-
sibile attraverso il sito segnalare una garanzia di qualità di 3 anni sia gurazione out-of-the-box segue un
casi “dubbi” di phishing: gli esperti ai prodotti che a tutti gli accessori. modello di processo testato e basato
del’Osservatorio risponderanno in Per ulteriori informazioni visitare il su best practice. I clienti possono
breve tempo a tutti. sito www.antec.com. implementare il prodotto con assi-

48 VBJ N. 77 - Settembre/Ottobre 2007


Prodotti & News

stenza remota all’installazione o con traccia dal vivo. Inoltre, la Samplitu- Paesi Bassi, Belgio, Francia, Spagna;
consulenza on-site, per un servizio de Playback Engine, rende possibili Chart Track UK; NPD Data Charts
più completo e personalizzato. delle azioni che necessitano un alto PC/CD-ROM non-games USA. Gen-
Gli sviluppatori vogliono strumenti rendimento del sistema come l’ap- naio-Luglio 2007.
con le migliori prestazioni e Dimen- plicazione degli effetti agli oggetti.
sions Express è all’altezza delle aspet- Samplitude Music Studio 2008 offre FileMaker lancia un nuovo
tative: è costruito su una architettura poi una totale neutralità del suono,
altamente scalabile con prestazioni caratteristica tipica delle console sito web per il settore
senza precedenti in reti LAN e WAN. high-end analogiche. Education
Spesso le aziende hanno bisogno di Samplitude Music Studio 2008 non
un approccio evolutivo e incremen- lascia soli gli user che non dispongo- FileMaker, Inc., produttore del po-
tale per implementare l’Applica- no di strumenti analogici: ai cinque polare software database FileMaker
tion Lifecycle Management (ALM). Vital instruments di Yellow Tool già Pro, ha realizzato un nuovo micro-
Dimensions Express fornisce un inclusi, si aggiungono adesso i nuovi sito Education (www.filemaker.it/
elemento centrale dell’ALM – il sof- “E-Guitar”, “Power Chords”, “Electric- education) per aiutare docenti,
tware di Configuration Management Guitar” e le “Soundtrack Percussion”. studenti, ricercatori e personale
avanzato - come capacità standalone. Questi possono essere suonati con la scolastico-amministrativo a gestire
Le aziende possono quindi far fronte tastiera del PC o quella MIDI produ- efficacemente i propri dati e le in-
a esigenze immediate e allo stesso cendo un suono assolutamente neu- formazioni.
tempo essere pronte ad assumere un trale. Gli strumenti virtuali a corda Presente nel settore Education da
approccio più olistico e completo in e i fiati sono degni di una grande oltre 20 anni, FileMaker si adatta ai
caso di future necessità. orchestra. Il nuovo sintetizzatore bisogni e alle esigenze di ciascuno dei
Dimensions Express è già disponibile. analogico polifonico “Revolta 2” crea suddetti soggetti del mondo scolasti-
Maggiori informazioni sono disponi- tutti i suoni adeguati a tutti i tipi di co sviluppando soluzioni specifiche
bili al sito www.serena.com. musica elettronica. quali, ad esempio, il Campus Produc-
L’automazione migliorata degli effetti tivity Kit, appositamente studiato per
Samplitude Music Studio permette di ottimizzare i parametri gli studenti.
VST, volume e panorama, attraverso Sono centinaia gli insegnanti e i
2008: Home-Recording il disegno diretto della curva del- direttori scolastici che quotidiana-
professionale l’automazione sulla traccia. Questa mente utilizzano FileMaker Pro per
funzione può essere utilizzata, per raccogliere le informazioni sugli stu-
I prodotti della serie Samplitude di esempio, per controllare l’eco in denti, organizzare le proprie lezioni o
MAGIX si distinguono per la qualità un luogo preciso. Gli strumenti VST gestire progetti e materiale a propria
del suono e le numerose opzioni per multicanale, che possono scrivere i disposizione.
l’elaborazione Audio & MIDI. Alla già MIDI-Events su fino a 16 canali, sono All’interno del nuovo micro-sito
ampissima gamma di prodotti, si ag- compatibili con il VST Multiout. dedicato, FileMaker offre numerose
giunge ora Samplitude Music Studio Il Cotroller-Hardware, infine, garanti- risorse centralizzate volte a supporta-
2008. Il nuovo nato della famiglia sce un effetto studio perfetto. re chi opera nel mondo della Scuola,
Samplitude stupirà il pubblico con MAGIX non si dimentica nemmeno siano essi utenti esperti oppure prin-
tante nuove funzioni: Hybrid Audio di coloro che iniziano solo adesso cipianti, ad ottimizzare l’utilizzo del
Engine, modalità di lavoro orientata ad utilizzare Music Studio. Grazie ai proprio software database FileMaker.
all’oggetto, registrazione multitrac- nuovi elementi di controllo e alle
cia, nuovi strumenti Vital ed automa- diverse modalità di visualizzazione, Tra le nuove risorse, FileMaker lancia
zioni per gli effetti. Samplitude Music è molto semplice trovare cìò che si una newsletter a cadenza trimestra-
Studio 2008 è disponibile nei migliori sta cercando. Con le pratiche cinque le.
negozi a soli 99,99 €. preconfigurazioni di divisione dello Oltre a presentare le ultime novità
schermo, lo user non perderà mai la di prodotto, consigli e suggerimenti
Il nuovo motore del software di panoramica sul progetto; se poi ne- ed offerte speciali, le newsletter
produzione musicale più venduto* cessitasse di aiuto per le proprie pro- FileMaker Education proporranno
unisce tutte le fasi del lavoro in un’ duzioni musicali, trova le risposte e le la testimonianza di diversi attori del
unica interfaccia: dalla registrazione soluzioni nella nuova infoCommunity sistema scolastico che hanno voluto
all’arrangiamento, l’elaborazione, il multimediale alla quale si accede di- trasmettere e condividere la propria
mixaggio, per terminare con la ma- rettamente dal programma. esperienza di utilizzo del software
sterizzazione. FileMaker nelle proprie attività quo-
Questo motore offre una latenza * Si riferisce ai prodotti software tidiane.
minima con massimo rendimento. I venduti al dettaglio secondo il rile- L’iscrizione alla newsletter FileMaker
brevi tempi di calcolo degli effetti vamento mensile di Media Control Education è gratuita e può essere
della traccia facilitano, per esempio, Germania (PC/CD-ROM non-games D effettuata all’indirizzo
il controllo della registrazione multi- secondo i criteri del VUD); GfK Chart www.filemaker.it/education

N. 77 - Settembre/Ottobre 2007 VBJ 49


.NET TOOLS
VS. Net 2005 & C++ & Refactoring
Refactor! per C++ Come accennato, la mancanza di un supporto al
Visual Studio .NET 2005 refactoring per i progetti C++ è apparso striden-
di Raffaele Di Natale te a tanti: un disallineamento inaspettato. Come
è stato evidenziato in altre occasioni [2], la Micro-
Un add-in indispensabile per effettuare il soft, in questi casi di “assenza di soluzione”, è so-
Refactoring di progetti C++ in ambiente lita consigliare nei propri siti tool gratuiti presenti
VS.NET 2005 sul mercato. Così, anche in questo caso, all’indiriz-
zo [3] Microsoft suggerisce l’utilizzo di Refactor!
“Refactor!” è stata con ogni probabilità l’escla- riassumendone le funzionalità con annessa spie-
mazione di tanti programmatori che, lavorando ad gazione del perché di questo approccio.
un progetto in C#, hanno riscontrato la presenza
di una serie di funzionalità di refactoring integra- Download ed installazione
ta nell’IDE. Successivamente, gli stessi program- Refactor! si presenta come un add-in per Visual
matori, passati poi ad un progetto C++ nel me- Studio .Net 2005. Può essere scaricato gratuita-
desimo IDE, si sono domandati “Refactor?”. Sì, mente dal sito [4] e successivamente installato.
perché con grande sorpresa il bel menu che cam- L’effettivo successo dell’installazione sarà evi-
peggiava prima nel progetto C# è sparito una vol- denziato sia dalla presenza del logo del tool nel-
ta aperto quello C++. lo splash-screen di avvio di Visual Studio, sia ac-
cedendo all’Add-in Manager (menu Tools/Add-in
Introduzione Manager) di VS.
Citando Martin Fowler [1], uno dei massimi
esperti in questo ambito, il refactoring è una tec- La famiglia Refactor!
nica utilizzata per migliorare il design di una base Refactor! per C++ appartiene ad una suite di
esistente di codice. La sua essenza consiste nel- applicazioni denominate IDE Productivity Tools
l’applicazione di una serie di piccole trasformazio- sviluppata da Developer Express [5] e pensata per
ni che, preservando comunque il comportamento il refactoring di progetti in ambiente Visual Stu-
dell’applicazione, non risultano singolarmente im- dio .NET 2005. Alla versione per C++ si aggiun-
portanti. Tuttavia l’effetto cumulativo di ciascuna gono quella per ASP .NET e per Visual Basic. Ol-
di queste trasformazioni è abbastanza significati- tre alle suddette versioni gratuite sono disponi-
vo per l’intero progetto. Inoltre, l’applicazione di bili le più complete versioni Pro, a pagamento.
tecniche di refactoring consente di ristrutturare Refactor! non può essere installato nelle versio-
il progetto software pur garantendo la sua con- ni Express Edition di Visual Studio.
sistenza. È vero però che il refactoring manuale
e non assistito potrebbe farci incappare in errori Refactoring Pattern
ed è per questo che risulta quasi indispensabile Il refactoring o, in altre parole, il consolidamen-
avere a disposizione un tool che in maniera au- to del codice esistente, è un’attività basata su pic-
tomatica estende su tutto il progetto i piccoli ag- cole operazioni di “lifting” del codice. Così come
giustamenti che apportiamo. l’applicazione di tecniche e modelli nello svilup-
po del codice ha portato alla definizione dei “De-

50 N. 77 - Settembre/Ottobre 2007
.NET TOOLS

pi di categorie di refactoring
pattern, con relativo refacto-
ring pattern e riferimento alla
funzionalità del tool:

§ Composing Methods, tra cui


RefactoringExtractMethod (Ex-
tract Method di Refactor!);

§ Organizing Data, tra cui Re-


factoringEncapsulateField (En-
capsulate Field di Refactor!);

In Tabella 1 sono presenti le


funzionalità di refactoring di
Refactor! con relativa descri-
Figura 1 Il menu “Refactor” standard di Visual Studio .Net 2005 zione. Per un completo ed ag-
giornato elenco di Refactoring
Pattern, si consiglia una lettura
del sito [6], mentre per una det-
sign Pattern”, allo stesso modo nell’ambito del re- tagliata lista di tool di refactoring per tutti i lin-
factoring si sono affermate delle tecniche poi rag- guaggi di programmazione visitate [7].
gruppate sotto il nome di “Refactoring Pattern”.
È chiaro che, per ovvie ragioni, un tool di refacto- Confronto col refactoring standard
ring che si rispetti deve per forza confrontarsi con VS.NET 2005
tali pattern. Ovviamente non tutti i pattern de- In Figura 1 è possibile osservare il menu rela-
vono per forza essere gestiti, ma di certo un tool tivo alle funzioni di Refactor! per progetti C# in
deve garantire un supporto per quelli più utiliz- ambiente VS.NET 2005. Le funzionalità suppor-
zati ed efficaci. Di seguito si elencano due esem- tate sono:

Refactoring Descrizione
Add Block Delimiters Inserisce {} in corrispondenza di un’istruzione
Case to Conditional Trasforma una sequenza di case ad una di if
Conditional to Case Effettua l’operazione inversa alla precedente
Create Overload Crea un overload per il metodo selezionato
Encapsulate Field Incapsula un campo esponendolo mediante get/set
Extract Function (outside of class) Estrae una funzione all’esterno di una classe
Extract Method Crea un metodo della classe a partire dal blocco di codice selezionato.
È possibile inoltre fissarne la posizione all’interno della classe.
Introduce Constant Introduce una costante
Move Method to Header Sposta il metodo nell’header
Move Method to Source File Sposta il metodo nel file sorgente
Remove Block Delimiters Rimuove le {} nei casi non necessari
Rename Rinomina un oggetto, una funzione, un metodo
Reorder Parameters Riordina i parametri
Reverse Conditional Inverte la logica di una condizione e scambia il blocco if con il blocco else
Simplify Expression Semplifica un’espressione che fa uso
Widen Scope Promuove una variabile locale a variabile membro

Tabella 1 Funzioni di refactoring di Refactor! per C++

N. 77 - Settembre/Ottobre 2007 VBJ 51


.NET TOOLS

factoring corrente (ad


esempio la semplifica-
zione di un’espressio-
ne, oppure l’estrazio-
ne di un metodo), sen-
za però risultare mac-
chinoso. La regola per
utilizzare al massimo
Refactor! è molto sem-
plice: bisogna pensa-
re a quale refactoring
applicare e di conse-
guenza quale porzione
di codice dovrà esse-
re influenzata da tale
cambiamento. Succes-
sivamente, la sempli-
ce pressione del tasto
destro del mouse sul
codice selezionato ci
permetterà di accede-
re alla voce di menu
“Refactor!” che elen-
Figura 2 Estrazione di un metodo mediante Refactor!
cherà i refactoring di-
sponibili per la sele-
zione in corso.

Un esempio
1. Rinominare una funzione, una variabile…
2. Estrazione di un metodo; Un’applicazione interessante di Refactor! è sen-
3. Incapsulamento di un campo pubblico; za dubbio l’estrazione di un metodo a partire da
4. Estrazione dell’interfaccia; un blocco di codice esistente. In Figura 2 si può
5. Promozione di una variabile locale a parame- notare come, in seguito alla pressione del tasto
tro; destro del mouse in prossimità di un blocco di
6. Rimozione di parametri; codice precedentemente selezionato (che si vuo-
7. Ordinamento dei parametri. le spostare a livello di funzione membro di una
classe), venga suggerito il nome della funzione e
Da un semplice confronto con la Tabella 1 si può i rispettivi parametri; successivamente, sarà pos-
notare che, ad eccezione della 4 e della 6, tutte le sibile stabilire la posizione della funzione all’in-
voci sono supportate anche da Refactor! terno della dichiarazione della classe.

Refactor! e l’IDE VS.NET 2005 Conclusioni


Refactor! per C++ è perfettamente integrato I tempi stringenti nella consegna di progetti sof-
nell’ambiente VS.NET 2005 e l’utilizzo richia- tware, ovvero ritardi negli stati di avanzamento
ma per molti aspetti quello standard dei proget- dovuti ai problemi più disparati, portano spesso i
ti C#. Rispetto a quest’ultimo, Refactor! usa un programmatori a scrivere codice efficace e maga-
po’ di grafica in più per facilitare le scelte del- ri non eccessivamente “pulito”. Un progetto che
l’utente, mostrando in anteprima l’effetto del re- deve essere gestito per più anni, e non quindi un

52 VBJ N. 77 - Settembre/Ottobre 2007


.NET TOOLS

software “usa e getta”, merita ripetute sessioni di


refactoring tra una release e l’altra. Avere oggi a Internet Explorer
disposizione tool come Refactor! che ci permette Developer Toolbar
di raggiungere i nostri obiettivi col minimo sforzo
rende il refactoring un grosso investimento per il di Fabio Perrone
futuro della soluzione sviluppata col minimo co-
sto nel presente. Uno strumento per comprendere a fondo
le applicazioni web
Bibliografia e riferimenti
[1] http://martinfowler.com/books.html#refactoring
[2] R. Di Natale - “. Net Tools”, Visual Basic Jour- Per comprendere più a fondo le applicazioni
nal, n.70, Lug/Ago 2006 web che ognuno di noi scrive, o semplicemente
[3] http://msdn2.microsoft.com/en-us/visualc/ come strumento di apprendimento per carpire i
bb737896.aspx “segreti” di pagine web scritte da terzi, la Deve-
[4] http://www.devexpress.com/Products/NET/ loper Toolbar di Internet Explorer si può rivela-
IDETools/RefactorCPP/ re uno strumento alquanto soddisfacente. Fino-
[5] http://www.devexpress.com/Products/NET/ ra uno strumento simile era presente soltanto per
IDETools/Index.xml il browser Firefox con l’add-in Firefox Web Deve-
[6] http://www.refactoring.com/tools.html loper Extension, già recensito in passato su que-
[7] http://www.refactoring.com/catalog/index.html sta rivista.
Grazie infatti alle sue molteplici caratteristiche,
tra le quali l’esplorazione del Document Object
Prodotto Model di una pagina web, la visualizzazione delle
Refactor! per C++
parti di HTML presenti su una pagina, l’eviden-
Url di riferimento ziazione di tabelle, la visualizzazione delle dimen-
http://www.devexpress.com/Products/NET/IDETools/
sioni delle immagini (solo per citarne alcune), è
RefactorCPP/
possibile approfondire la conoscenza di qualsiasi
Stato Release pagina presente nel browser.
v. 2.5.4
Dopo avere effettuato senza alcun problema l’in-
Semplicità d’uso ªªªªª stallazione (richiede almeno Windows 2000) trove-
Perfettamente integrato con l’IDE
remo l’icona dell’applicazione sotto la barra degli
Utilità ªªªªª strumenti di Internet Explorer. È da notare che
Chi esegue ordinariamente il refactoring di progetti software in questo tool funziona sia con Internet Explorer 6
C++ trova in questo add-in una soluzione ad un’evidente lacu-
na dell’IDE
che con Internet Explorer 7.
Una volta lanciata la Developer Toolbar, questa
Qualità prodotto ªªªªª si posizionerà automaticamente nella parte bassa
Non sono stati riscontrati problemi degni di nota
dello schermo, ma è anche possibile effettuarne il
Qualità documentazione ªªªª² “detach” e lasciarla mobile sulla pagina.
In lingua inglese, qualche esempio in più aiuterebbe i neofiti del
refactoring La caratteristica principale presente nel cuore
dell’applicazione è il DOM Explorer, che permette
di esplorare e approfondire il significato dell’HT-
ML di qualsiasi pagina, analizzandone i diversi
attributi e stili presenti sulla pagina stessa. Que-
Raffaele Di Natale è laureato in Scienze dell’In-
formazione presso l’università di Catania, insegna sta funzionalità avviene tramite la visualizzazione
Informatica presso l’ITI. Attualmente si occupa di pro- gerarchica di tutti gli elementi presenti, esposti
grammazione in ambito mobile, di help authoring, alla navigazione tramite un treeview situato sul
content management system, content syndication
ed e-learning. lato sinistro dell’applicazione. Quando si evidenzia
un elemento tramite un click con il tasto sinistro

N. 77 - Settembre/Ottobre 2007 VBJ 53


.NET TOOLS

Figura 1

del mouse, vengono mostrate nel lato destro del- Da notare anche la presenza di alcune informa-
l’applicazione le proprietà e gli stili dell’elemento zioni legate ai cookie, quali la possibilità di visua-
prescelto. Tuttavia, scorrere tutto il DOM di una lizzarne alcune informazioni, di disabilitarli per
pagina alla ricerca di un elemento può non essere poter così controllare se si verificano malfunzio-
un’operazione completamente agevole, ma fortu- namenti, oppure la loro eliminazione.
natamente è possibile fare click direttamente su La presenza di un righello interattivo che com-
di un elemento della pagina affinché questo ven- pare sulla pagina quando si richiama la voce di
ga immediatamente evidenziato nel DOM: senza menu “Tools -> Show Ruler” permette di stabi-
dubbio, una grande comodità. lire con estrema precisione le dimensioni degli
Oltre all’analisi del DOM, vediamone altre fun- oggetti.
zionalità. Molto importante ed utile è senza dub- Ultimamente le applicazioni web stanno pren-
bio la possibilità di ridimensionare il sito per si- dendo sempre più piede anche per applicazioni
mulare altre risoluzioni sullo schermo, così da po- gestionali, quindi non sono più semplicemente
ter evidenziare eventuali difetti di visualizzazio- un contenitore di informazioni da esporre agli
ne della pagina, la visualizzazione delle tabelle, utenti, ma ci si attende che gli utenti stessi im-
delle celle e dei DIV. mettano dati all’interno di web form ed è quindi
Vista la loro enorme importanza nelle applica- importante che il TabIndex dei controlli che ac-
zioni web, le immagini hanno meritato un menu cettano dei valori sia corretto: la voce “View ->
a parte, in cui è possibile disabilitarle , mostrarne TabIndexes” mostra (in modo simile alla fase di
le dimensioni (in pixel) nonché il peso delle im- progettazione delle applicazioni Windows Forms
magini stesse e il percorso completo da cui ven- all’interno di Visual Studio) l’ordine di tabulazio-
gono recuperate. Tutte queste informazioni pos- ne di tutti i controlli.
sono essere visualizzate insieme o singolarmen- Ulteriori funzionalità ci vengono fornite dal
te. Infine, l’Image Report crea un file XML con- menu “Validate”: sono presenti tutti i link alle
tenente tutte le immagini presenti sulla pagina pagine W3C che permettono di effettuare la con-
con le loro caratteristiche. valida dell’HTML, dei CSS, dei Feed e dei link

54 VBJ N. 77 - Settembre/Ottobre 2007


.NET TOOLS

presenti sulla pagina. La convalida delle pagine


Prodotto
web è fondamentale per poter esporre sulle pagi- Internet Explorer Developer Toolbar
ne stesse il logo “W3C”, sinonimo di qualità e di
Url di riferimento
conformità agli standard della pagina stessa. http://www.microsoft.com/downloads/details.aspx?FamilyID=E5
Infine, un piccolo strumento utile per riprodurre 9C3964-672D-4511-BB3E-2D5E1DB91038&displaylang=en
alcune immagini è un color picker che permette Stato Release
di recuperare il colore di qualsiasi elemento pre- Stabile
sente sul sito.
Semplicità d’uso ªªª²²
L’Internet Explorer Developer Toolbar, oltre ad Nonostante le disparate funzionalità, sono tutte molto imme-
uno strumento di esplorazione per sviluppatori diate
esperti, è senza dubbio anche un ottimo strumen- Utilità ªªª²²
to di apprendimento che permette di andare ol- Per chi desidera approfondire la conoscenza delle applicazio-
tre al semplice “Visualizza HTML” presente nel ni web
browser, permettendo così di rivolgersi sia ad un Qualità prodotto ªªª²²
pubblico di beginner che ad un pubblico di svi- Affidabile, nei test sul prodotto eseguiti non ha mai mostrato par-
luppatori avanzati. ticolari problemi
Nonostante il download sia irrisorio (624 kb), le Qualità documentazione ªª²²²
notevoli potenzialità di questa applicazione pos- Ma l’utilizzo dei tool è immediato
sono permettere di comprendere maggiormente
qualsiasi tipo di applicazione web e di riuscire Fabio Perrone, laureato in Matematica e MCTS
ad approfondire la comprensione e le tecniche di (Web) in C# 2.0, lavora presso TSF s.p.a. dove si
creazione di qualsiasi pagina. occupa di progettazione e sviluppo di applicazioni
Windows e Web.

N. 77 - Settembre/Ottobre 2007 VBJ 55