Xojo: differenze tra le versioni

Da Wikipedia, l'enciclopedia libera.
Vai alla navigazione Vai alla ricerca
Contenuto cancellato Contenuto aggiunto
Nessun oggetto della modifica
Riga 73: Riga 73:
Entrambe le versioni dell'IDE permettono di costruire l'[[interfaccia utente grafica]] dell'applicazione trascinando i controlli dalla barra degli strumenti alla finestra che li contiene. Il posizionamento dei controlli è agevolato dall'IDE, che permette di allinearli (sia in orizzontale che in verticale) e fornisce informazioni sulla distanza tra i controlli o tra un controllo e i bordi della finestra.
Entrambe le versioni dell'IDE permettono di costruire l'[[interfaccia utente grafica]] dell'applicazione trascinando i controlli dalla barra degli strumenti alla finestra che li contiene. Il posizionamento dei controlli è agevolato dall'IDE, che permette di allinearli (sia in orizzontale che in verticale) e fornisce informazioni sulla distanza tra i controlli o tra un controllo e i bordi della finestra.


Come molti IDE moderni, l'[[editor di codice]] supporta strumenti personalizzabili come l'[[evidenziazione della sintassi]], il [[completamento automatico]] e il [[refactoring]] della struttura del codice. L'IDE include anche editor per menù e schemi di database, ed un visualizzatore per file mutimediali come immagini, filmati o audio.
Come molti IDE moderni, l'[[editor di codice]] supporta strumenti personalizzabili come l'[[evidenziazione della sintassi]], il [[completamento automatico]] e il [[refactoring]] della struttura del codice. L'IDE include anche editor per menù e schemi di database, ed un visualizzatore per file multimediali come immagini, filmati o audio.


L'IDE dà al programmatore l'accesso alle funzioni di scripting tramite RBScript, che permette il controllo dell'IDE per automatizzare i task, come far avviare un [[test di regressione]] od avviare build notturne. Gli script possono essere sia globali sia specifici per un progetto.
L'IDE dà al programmatore l'accesso alle funzioni di scripting tramite RBScript, che permette il controllo dell'IDE per automatizzare i task, come far avviare un [[test di regressione]] od avviare build notturne. Gli script possono essere sia globali sia specifici per un progetto.


REALbasic supporta la [[compilazione incrementale]], attraverso cui il compilatore può ricompilare solo quelle parti di un progetto che sono state modificate. Per esempio, se soltanto il corpo di un metodo viene modificato, allora solo la voce del progetto contenente quel metodo necessita di essere ricompilata.
REALbasic supporta la [[compilazione incrementale]], attraverso cui il compilatore può ricompilare solo quelle parti di un progetto che sono state modificate. Per esempio, se soltanto il corpo di un metodo viene modificato, allora solo la voce del progetto contenente quel metodo necessita di essere ricompilata.


== Esempi di codice ==
== Esempi di codice ==

Versione delle 12:51, 21 giu 2013

REALbasic (RB) è un linguaggio di programmazione orientato agli oggetti basato su BASIC sviluppato e commercializzato da REAL Software, azienda con sede ad Austin, Texas per Mac OS X, Microsoft Windows, Linux 32-bit x86 e web.

Storia

REALbasic è stato creato da Andrew Barry. Il nome originariamente era CrossBasic, per sottolineare la sua capacità di compilare lo stesso codice di programmazione per Mac OS e Java (anche se l'ambiente di sviluppo integrato era solo Mac). Nel 1997 CrossBasic fu acquistato da FYI Software, che cambiò il suo nome in REALbasic e il nome dell'azienda stessa in REAL Software. Fu in questo periodo che venne abbandonato il target Java e furono aggiunti il target Windows ed il supporto database. L'IDE è ora disponibile per Microsoft Windows, Mac OS X, e Linux 32-bit x86 e può compilare applicazioni per Windows (Windows 2000 e superiore), Mac OS X (PowerPC, Intel, e Universal Binary) e Linux 32-bit x86. In aprile 2009 è uscito il nuovi IDE con il nome RealStudio, che permette di creare anche applicazioni web. Da giugno 2013 il prodotto si chiama Xojo, con una serie di nuove funzionalità e una nuova politica di licenze.

Caratteristiche del linguaggio

Anche se REALbasic (RB) usa la parola "basic" nella sua descrizione come una variante del linguaggio di programmazione BASIC, RB non si conforma allo standard ANSI per il linguaggio di programmazione BASIC. Ad esempio, il codice sorgente ANSI Standard di semplici programmi demo in TrueBASIC non compilerà in RB senza una riscrittura completa. RB non supporta l'operazione matematica matrix standard "mat" che rende ANSI BASIC uno strumento utile per l'insegnamento di concetti di programmazione introduttivi. RB è un linguaggio fortemente tipizzato con una conversione automatica di tipo ridotta al minimo, che supporta ereditarietà singola e interfacce, metodi e proprietà di classe, gestione della memoria automatica tramite il conteggio dei riferimenti, e il sovraccarico degli operatori. Una funzione importante è la capacità di estendere (non solo ereditare) classi esistenti, come le categorie Objective-C. Questa particolarità riduce considerevolmente il bisogno di Abstract Factory Pattern, che complicano l'uso di Framework applicativi in Java e C++. REALbasic include anche la funzione delegate, l'introspezione, e il supporto a namespace, che consentono ai moduli di contenere classi, interfacce e altri moduli.

Caratteristiche del framework

Come viene descritto nelle note al linguaggio, il framework incluso in RB supporta (REAL SOftware 2008):

La funzionalità framework può anche essere estesa con la creazione di plugin usando il Plugin SDK fornito da REAL Software. I plug-in sono creati usando C/C++ con una varietà di compilatori supportati, inclusi Xcode, Microsoft Visual Studio e GCC. I plug-in possono supportare tutte le piattaforme supportate da REALbasic.

Formato file

Il formato del file sorgente contiene dati per la disposizione di finestre e controlli ed è proprietario, anche se l'importazione e l'esportazione in formato XML sono supportate. Tutto il codice sorgente può essere contenuto in un file di progetto, ma è possibile anche avere classi/moduli in file separati nella stessa maniera in cui possono farlo la maggior parte degli altri linguaggi e dialetti. REALbasic compila direttamente in codice macchina per ogni piattaforma supportata. REALbasic 2006 Release 3 e successive supportano anche un formato testuale che consente l'utilizzo di strumenti di controllo della versione quali Subversion or CVS.

Edizioni dell'IDE

Ci sono tre versioni dell'IDE:

  • REAL Studio include tutte le caratteristiche della Professional Edition, più altre funzioni per programmatori a tempo pieno.
  • La Professional Edition può compilare programmi per Max OS X (PowerPC Carbon Mach-O, i386 Carbon Mach-O e Universal Binary), Linux e Windows dallo stesso codice sorgente; può anche accedere a database (REAL Server, MySQL, Oracle, PostgreSQL, ODBC, ecc.) compreso il motore Database REAL SQL monoutente incluso, basato su SQLite; compila applicazioni console, ha un profiler di codice, può fare il debug remoto e ha numerose altre caratteristiche.
  • La Personal Edition compila solo programmi per la piattaforma sulla quale l'IDE sta girando (Windows, Linux e Mac) e non consente l'accesso a database diversi da quello incluso REAL SQL Database.

Caratteristiche IDE

Entrambe le versioni dell'IDE permettono di costruire l'interfaccia utente grafica dell'applicazione trascinando i controlli dalla barra degli strumenti alla finestra che li contiene. Il posizionamento dei controlli è agevolato dall'IDE, che permette di allinearli (sia in orizzontale che in verticale) e fornisce informazioni sulla distanza tra i controlli o tra un controllo e i bordi della finestra.

Come molti IDE moderni, l'editor di codice supporta strumenti personalizzabili come l'evidenziazione della sintassi, il completamento automatico e il refactoring della struttura del codice. L'IDE include anche editor per menù e schemi di database, ed un visualizzatore per file multimediali come immagini, filmati o audio.

L'IDE dà al programmatore l'accesso alle funzioni di scripting tramite RBScript, che permette il controllo dell'IDE per automatizzare i task, come far avviare un test di regressione od avviare build notturne. Gli script possono essere sia globali sia specifici per un progetto.

REALbasic supporta la compilazione incrementale, attraverso cui il compilatore può ricompilare solo quelle parti di un progetto che sono state modificate. Per esempio, se soltanto il corpo di un metodo viene modificato, allora solo la voce del progetto contenente quel metodo necessita di essere ricompilata.

Esempi di codice

Questo è un esempio di sovraccarico dell'operatore (operator overloading) per un'ipotetica classe Complex che permette di sommare un numero reale con un numero complesso, e di sommare due numeri complessi:

Function Operator_Add (rhs As Single) As Complex
  Dim ret As New Complex
  ret.Real = Self.Real + rhs
  ret.Imaginary = Self.Imaginary
  Return ret
End Function
 
Function Operator_Add (rhs As Complex) As Complex
  Dim ret As New Complex
  ret.Real = Self.Real + rhs.Real
  ret.Imaginary = Self.Imaginary + rhs.Imaginary
  Return ret
End Function

La stessa funzione può essere definita per accettare valori Double DataType. Questo codice mostra come usare la classe Complex per sommare un numero reale con un numero complesso:

 Dim First As New Complex (0, 1)
 Dim Second As New Complex (1, 1)
 Dim Sum As Complex
 Sum = First + 5.0 + Second
 // La somma sarà (6, 2)

Bibliografia

Voci correlate

Linguaggi BASIC affini

Collegamenti esterni