Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
Recensione SharpDevelop - Software

SharpDevelop

A cura di: Totem


SharpDevelop è un IDE (Integrated Development Environment) con licenza GPL GNU prodotto da icsharpcode.net, che permette la compilazione di programmi scritti in più linguaggi: C++.NET, ILasm, C# e VB.NET.


Due editor in uno: Codice & GUI
Come i più moderni ed avanzati ambienti di sviluppo integrati, SharpDevelop iclude sia un editor per il codice sorgente dellapplicazione, sia un efficace strumento di sviluppo visuale per il disegno delle forms. Da notare la funzione di completamento in tempo reale, che permette di visualizzare automaticamente tutti i membri di classe, argomenti delle funzioni e tipi delle variabili, in modo da facilitare al programmatore la stesura del codice senza doversi ricordare a memoria ogni dichiarazione. Altra interessante caratteristica delleditor del codice è il tracciamento della gerarchia delle parentesi, evidenziate a coppie, che facilita non poco la creazione di complesse espressioni... senza dimenticarsi di chiudere le parentesi! Spicca, inoltre, fra le caratteristiche peculiari delleditor la possibilità di evidenziazione le parole riservate della sintassi secondo 17 schemi diversi (predefiniti), e la possibilità di personalizzare e creare ex novo i propri schemi, magari per ampliare la già ampia gamma di evidenziazione delle sintassi supportate.
Per quanto riguarda il FormDesigner, ci troviamo davanti ad un eccellente ambiente di sviluppo: tra le features più interessanti abbiamo la listbox delle proprietà dei componenti che permette lediting di tutte le proprietà e la gestione dei delegate per gli eventi relativi al controllo; è presente anche una toolbox con la lista dei componenti inseribili: sarebbe limitativo dire che si possono aggiungere alla form solo quelli della normale WindowsForms, perchè SharpDevelop fornisce una gamma di controlli veramente completa che, per citarne qualcuno, vanno dagli oggetti di interazione con i database MySQL fino ai componenti per la gestione dei Processi.
Altro strumento che semplifica la scrittura del codice è la toolbox laterale che contiene numerosi aiuti: dai tipi di licenze alla tabella dei codici ascii, dai tag XSL alla gestione degli appunti allinserimento dei marcatori per la documentazione del codice.
Altre ToolWindows interessanti sono la finestra dei progetti, nella quale è riportato, con una struttura ad albero, ciò che comprende il progetto: files di codice, reference ai namespace, file di risorse, etc... e la finestra delle classi, dove, con la stessa tipica struttura ad albero, sono riportate tutte le classi create nel sorgente dal programmatore, con la possibilità di visualizzarne i componenti velocemente tramite il mouse.
Immagine postata dall'utente


Run Time: Debugger & Log
Completato il nostro programma, possiamo servici del debugger integrato in SharpDevelop per verificare il suo corretto funzionamento. Durante il compilation time, una textbox ci informa sulle azioni del compilatore e, in caso di errori, mostra la riga dellerrore e la ragione per cui non è possibile continuare. Durante il debug abbiamo un trace delle variabili e un break on line per garantire lesecuzione passo passo e cercare lorigine dellerrore o del malfunzionamento. Inoltre si può passare dalla modalità Debug alla Release semplicemente cambiando la listbox a fianco del pulsante Run&Compile. Questo procedimento non solo cambia la cartella nella quale il sorgente compilato andrà ad essere posto, ma anche le modalità di compilazione, che favoriscono una distinzione fra il programma pronto per essere pubblicato e la semplice applicazione in attesa di essere terminata, così da evitare problemi.


Gli Strumenti: Un ToolPack Completo
SharpDevelop non offre solo la compilazione, ma anche molteplici strumenti che possono servire al programmatore in altrettanto numerose evenienze. Spicca, fra questi, la possibilità di scegliere fra 25 lingue diverse, aggiungere strumenti personalizzati (di default ci sono il NotePad, lNProf e ILDasm), modificare secondo il proprio gusto personale ogni aspetto dellinterfaccia grafica di sviluppo. In aggiunta abbiamo anche: un Kit ben fatto per le Regular Expressions, una gestione completa e flessibile degli add-in, e, infine, un generatore di report (SharpReport).
Immagine postata dall'utente
Immagine postata dall'utente


Chi cerca trova: le Funzioni di Ricerca
Cosa non potrebbe mancare in un editor di questo tipo? Ovviamente le funzioni di ricerca! Il menù Cerca è uno fra i più ricchi, sicuramente non da meno rispetto ad un qualsiasi editor di testo, ma che, anzi, offre funzionalità efficaci e specifiche per ogni esigenza. Da primo, saltano subito allocchio i classici comandi Cerca (e Cerca il prossimo) e Sostituisci. Ma SharpDevelop offre anche funzioni potenti che possono servire nello sviluppo di applicazioni anche di dimensioni molto grandi, e che magari richiedono svariate WindowsForm, moduli o librerie ed altrettanti file sorgenti: queste sono Cerca nei Files e Sostituisci nei Files, le quali permettono di cercare una parola od unespressione in tutte la cartella del progetto, con lopportunità di eseguire una ricerca sulle sotto-directory, su file specifici, sullintero progetto, in modalità Case-Sensitive e non, solo nei file aperti e con molte altre opzioni ancora. Ultima fra le alternative disponibili è la funzione Vai alla Linea, che, anche se molto semplice, garantisce sempre una precisione impeccabile.

Comparativa: SharpDevelop & Microsoft Visual Studio.NET 2003
Oltre ad elencare le features maggiori ed interessanti di SharpDevelop bisogna anche confrontarlo con i maggiori IDE per .NET presenti sul mercato. Il nostro test è stato molto semplice, ci è bastato confrontare la memoria utilizzata durante le varie fasi di esecuzione dei diversi IDE:

Memoria Microsoft Development Environment .NET 2003:

Start (apertura del programma) -> 21Mb
Idle (nessun progetto caricato) -> 7.5Mb
Load (progetto caricato) -> 4.5Mb

Memoria #Develop:

Start (apertura del programma) -> 47.5Mb
Idle (nessun progetto caricato) -> 9.5Mb
Load (progetto caricato) -> 10Mb

Come possiamo evincere da questi valori, Visual Studio.NET beneficia di maggiore ottimizzazione, ma ciò è facilmente giustificabile dal fatto che la tecnologia .NET è proprietaria Microsoft quindi comporta una maggiore conoscienza dellintimo del framework. Non è da sottovalutare il livello di ottimizzazione di SharpDevelop, che ha raggiunto comunque ottimi risultati. Se proviamo a fare un paragone tra IDE .NET & Java, il verdetto è schiacciante:

Memoria Netbeans:

Start (apertura del programma) -> 69Mb
Idle (nessun progetto caricato) -> 69Mb
Load (progetto caricato) -> 105Mb

Java si conferma essere una tecnologia molto più esigente, in termini di risorse, del .NET.

Bisogna considerare, però, che Java ha come obiettivo di funzionare su più piattaforme, .NET è ottimizzato per funzionare sui sistemi windows, nonostante la sua natura tecnologica ne permetta facili porting, che però non garantiscono le stesse performances.

Conclusioni
Sharpdevelop offre funzioni semplici, veloci ed intuitive per la stesura del codice, include componenti funzionali ed utili, ha unide accattivante e pulita, il tutto in un ambiente di sviluppo gratuito opensource. Non ha nulla da invidiare al fratello maggiore di casa Microsoft, perchè offre praticamente la stessa flessibilità e potenza di Visual Studio.NET. Sharpdevelop è consigliato a tutti gli studenti e professionisti che lavorano con .NET che non vogliono spendere 300 euro per VS.NET 2003, ma vogliono avere uno strumento di sviluppo di questo calibro assolutamente senza prezzo.