L’Ide verso l’open-source e il multiplatform

Gli ambienti di sviluppo si sono molto evoluti negli ultimi anni, soprattutto in conseguenza dell'evoluzione del software di sistema da una parte e del software applicativo dall'altra. Gli Ide (Integrated development environment) sono un importantissimo strumento di progettazione, altamente integrato e automatizzato. Anche quando sono a supporto di processori ad architettura computazionale semplice come i microcontrollori a 8 bit, gli ambienti Ide non sono dei semplici pacchetti software che includono l'editor, il compilatore e il debugger. La natura altamente complessa dei sistemi embedded, di cui i microcontrollori sono il componente più importante e complesso, è tale da richiedere funzionalità avanzate a supporto delle varie fasi di progettazione, sia al momento dell'editing del codice sorgente, sia a livello della generazione del codice, oltre che a livello di debug del codice. Microchip ha recentemente annunciato Mplab X, un nuovo ambiente Ide basato sull'ambiente open-source NetBeans con supporto cross-platform per sistemi operativi Linux, Mac OS e Windows. Si tratta di un Ide di nuova generazione dotato di funzionalità avanzate, idonee a supportare progetti di complessità crescente e con requisiti sempre più stringenti, come la gestione contemporanea di più progetti, il debugging simultaneo, l'editing avanzato con funzionalità grafiche per tracciare le chiamate di funzione e di completamento del codice. Mplab X è principalmente finalizzato a supportare il portafoglio completo di microcontrollori a 8, 16 e 32-bit (oltre 800 modelli) PIC, dsPIC e di i dispositivi di memoria.

Soddisfare i requisiti dei sistemi embedded di nuova generazione
I requisiti di progettazione dei sistemi embedded di nuova generazione sono sempre più stringenti, sia dal punto di vista delle prestazioni, sia dal punto di vista del processo di sviluppo. Lo sviluppatore richiede sempre più strumenti di progettazione più avanzati sia in termini di funzionalità, sia in termini di interattività. Inoltre, data la complessità della progettazione sempre più orientata al sistema, l'universalità dell'ambiente di sviluppo è uno dei requisiti primari cui lo sviluppatore guarda con molto interesse. Mplab X è un esempio di piattaforma di sviluppo semplice, universale e flessibile per i progetti embedded di nuova generazione. Questi progetti richiedono funzionalità di Ide avanzate per supportare le esigenze di progettazione che sempre più spesso si basano su un'ampia serie di strumenti. Un altro aspetto è la migrazione da una piattaforma di computing all'altra, che richiede la riduzione della curva di apprendimento e di massimizzazione dell'utilizzo del know-how intellettuale e strumentale a disposizione. Offrire un'interfaccia grafica unica per tool come i debugger è un esempio di come si possa soddisfare positivamente tali requisiti. L'utilizzo di una piattaforma open-source come NetBeans, ha rappresentato una scelta strategica nella realizzazione dell'Ide Mplab X. La natura open-source di NetBeans si riflette in Mplab X, consentendo agli sviluppatori di fruire dei numerosi plug-in e componenti software gratuiti resi disponibili dalla comunità degli sviluppatori. Inoltre è possibile da parte dello sviluppatore di personalizzare l'Ide Mplab X per soddisfare al meglio le proprie esigenze di progettazione. Mplab X si caratterizza principalmente per l'utilizzo dei colori per evidenziare il contenuto sintattico del codice. Inoltre, viene eseguito il parsing del codice simbolico mentre si è in fase di editing. Ciò consente di evidenziare subito gli errori di scrittura del programma, normalmente rivelati al momento della compilazione.
L'interazione con l'editor per la scrittura del programma sorgente è “intelligente” in quanto durante la digitazione vengono forniti dall'editor una serie di suggerimenti di completamento della scrittura in corso e, cosa più interessante, vengono suggeriti i costrutti che meglio si adattano alla logica del codice che si sta editando. Una interessante funzionalità orientata all'automatismo è la formattazione automatica del codice in base ad una serie di regole di formattazione che lo stesso sviluppatore scrive. In tal modo è possibile personalizzare lo stile di scrittura del codice ed allo stesso tempo accelerare il processo di scrittura che, di conseguenza, si limita alla sola digitazione del testo del codice sorgente. La formattazione del codice viene eseguita dall'editor. È anche possibile ottenere la ristrutturazione automatica e “intelligente” del codice.


Le caratteristiche di Mplab X
•    Basato su Java/NetBeans
•    Supportato in ambiente Windows, Linux, Mac OS X 10.5 e Mac OS X 10.6
•    Compilatori Mplab C32 (PIC32MX) e C30 (PIC24 e dsPIC)
•    Utility di importazione per una rapida e semplice migrazione dei progetti dalla precedente piattaforma Ide Mplab
•    Menu contestuali e completamento codice attraverso un editor avanzato
•    Finestre di osservazione (watch) configurabili
•    Supporto simultaneo per più versioni di compilazione
•    Tool di collaborazione in team per l'osservazione dei bug e il controllo del codice sorgente

NetBeans, un ambiente opensource
NetBeans è nato come open student project (Xelfi) presso la Facoltà di Matematica e Fisica alla Charles University di Praga nel 1996, con l'obiettivo di scrivere un Ide in Java, il primo basato su questa filosofia di programmazione. La sua prima versione fu rilasciata nel 1997. L'idea innovativa di sviluppare un Ide in Java ebbe successo, malgrado come Java Ide fosse a quell'epoca una vera e propria scommessa. Gli studenti artefici di questo progetto, dopo la laurea, introdussero sul mercato come prodotto commerciale l'Ide che avevano creato e fondarono, con altri, una società. In un paio di anni destarono l'interesse di Sun Microsystems, il creatore di Java, che decise di farlo diventare il suo strumento di riferimento. Un passaggio successivo fu quello di renderlo open-source (www.netbeans.org). Oltre alle funzionalità tipiche degli ambienti di sviluppo e debug come i “watch” e i “breakpoint”, altre funzionalità hanno permesso di estendere le possibilità di sviluppo, come ad esempio la connettività al una Jvm (Java Virtitual Machine) remota che consente all'Ide di supportare la connessione a una Jvm in un processo differente e in esecuzione con l'opzione di debug. Un'altra funzionalità innovativa è la “multiple threads of execution”, cioè la funzionalità che consente di eseguire il debug anche su applicazioni multithread.

LASCIA UN COMMENTO

Inserisci il tuo commento
Inserisci il tuo nome