Programmazione.it v6.4
Ciao, per farti riconoscere devi fare il login. Non ti sei ancora iscritto? Che aspetti, registrati adesso!
Info Pubblicità Collabora Autori Sottoscrizioni Preferiti Bozze Scheda personale Privacy Archivio Libri Corsi per principianti Forum
FXRuby Create Lean and Mean GUIs with Ruby
Recensito da Francesca Beatrice Cice il 04-07-2008 ore 10:01
Copertina ISBN: 9781934356074
Autori: Lyle Johnson
Editore: Pragmatic Bookshelf
Lingua: Inglese
Anno: 2008
Pagine: 228
Allegati: Nessuno
Intel Parallel Studio XE
FXRuby è una libreria per la progettazione di interfacce utenti (GUI), basata su FOX Toolkit, una libreria open source scritta in C++ da Jeroen van der Zijp.

FOX Toolkit nacque come Free Objects for X (FOX), il target era lo sviluppo di interfacce per il sistema X Windows. Da allora sono passati 10 anni, rispetto all'insieme delle librerie grafiche Motif, in cui per inserire un singolo bottone erano necessarie dozzine di linee di codice, con FOX bastava una singola linea. Grazie a questo vantaggio,FOX ha raggiunto importanti traguardi, tra i quali il porting per Windows e il supporto per la programmazione 3D e l'utilizzo per creare interfacce grafiche per i più importanti sistemi operativi.

FOX Toolkit è scritto in C++ e questo costituisce un requisito fondamentale per operare con questa libreria. FXRuby, Create Lean and Mean GUIs with Ruby, spiega come realizzare interfacce in Ruby basandosi sulle librerie FOX. Questo libro si rivolge a programmatori software, che vogliono imparare lo sviluppo di applicazioni GUI usando il linguaggio di programmazione Ruby. Non rientra tra gli obiettivi degli autori dare le basi di programmazione in Ruby, di conseguenza i lettori ai quali si rivolge il testo sono quelli che dispongono di una buona infarinatura della programmazione in Ruby.

Al contrario non è necessario avere conoscenze sulla programmazione delle GUI, nel corso del libro viene affrontato dettagliatamente questo argomento. Nella prima parte, Building an FXRuby Application, viene descritta la procedura per scrivere una piccola applicazione FXRuby, comprese le istruzioni per far sì che il proprio Ruby abbia l'estensione FXRuby.

L'interprete di Ruby carica la libreria FXRuby a runtime, introducendo una serie di nuove classi Ruby e costanti nel processo. Dal punto di vista dello sviluppatore la libreria FXRuby è vista come una qualsiasi altra libreria 'pura' di Ruby, l'unica differenza è che il codice sorgente della libreria è diverso.

FXRuby espone tutte le funzionalità della libreria
FOX, ma va oltre le caratteristiche di base, per fornire un'interfaccia di alto livello. Quindi piuttosto che scrivere innumerevoli linee di codice in C++ per mappare gli eventi dell'interfaccia utente al codice eseguibile delle applicazioni FOX, in FXRuby è sufficiente connettersi ad un blocco Ruby direttamente da un widget utilizzando pochissime linee di codice.

FOX fornisce supporto per ogni elemento dell'interfaccia utente: etichette, bottoni, campi di testo, ma permette anche di sviluppare form basati su GUI e di gestire la visualizzazione 3D. Un'altra caratteristica veramente importante è che le GUI generalmente utilizzano widget più o meno complessi; FOX offre solo funzionalità di base, invece di implementare classi e metodi per widget esistenti. Questo approccio offre diversi vantaggi e in particolare FOX, essendo progettato come una soluzione object-oriented ed estensibile, permette di definire il comportamento dei widget che crea e di utilizzare in una moltitudine di GUI. Inoltre questa libreria utilizza veramente poche righe di codice e questo permette di ottenere alte prestazioni con la riduzione dei rischi di bachi nel codice. Infine, non bisogna dimenticare la licenza di FOX che è di tipo Lesser GNU Public License (LGPL).

Il libro risulta completo sin dalle fasi iniziali, l'installazione è considerata per i principali sistemi operativi: Windows, MAC OS X e Linux. Nel libro viene descritto come realizzare una galleria fotografica, passando dal codice fino alla GUI per la gestione delle foto. Nella parte seconda, FXRuby Under the Hood, si passa alla parte più tecnica, cioè quella che permette ad un'interfaccia di essere collegata al codice Ruby e realizzare così controlli e widget.

Il metodo usato per collegare i widget ai chuck di codice di Ruby è connect(). Esso crea un oggetto target e un identificatore di messaggio e li assegna al messaggio del mittente, così da non alterare il modello di programmazione degli eventi guidati di FOX. Si è parlato tante volte di widget, ma forse non tutti sanno che si tratta di piccoli blocchi di codice collegati ad elementi dell'interfaccia grafica. Per esempio, quando si accede da File | Apri si attiva il widget collegato all'apertura dei file.

I principali widget sono quattro - Imperative, Selection, Entry, Display - ed è possibile utilizzarli in combinazione; nel testo l'argomento viene trattato ampiamente. Fino alle ultime pagine,
FXRuby, Create Lean and Mean GUIs with Ruby offre la possibilità al programmatore abituale, ma anche a quello newbie, di capire e utilizzare le librerie FOX.
proIl testo è ottimo; il linguaggio è molto semplice e permette di acquisire, pagina dopo pagina, coscienza di cosa sono le interfacce grafiche e come svilupparle utilizzando una libreria scritta in C++ in un linguaggio di programmazione come Ruby. Personalmente ho ritenuto questo libro molto utile, soprattutto perché in poche pagine sono presenti le nozioni fondamentali per utilizzare le interfacce grafiche nei miei programmi scritti in Ruby.
controIl libro non va inteso come un manuale di riferimento, che è tuttavia presente in ogni distribuzione FXRuby.
Precedente: I 5 migliori download secondo CNET: terzo posto per Miro (3/5)
Successiva: SKYHOOK Wireless annuncia un nuovo sistema ibrido di posizionamento globale (1/2)
Copyright Programmazione.it™ 1999-2013. Alcuni diritti riservati. Testata giornalistica iscritta col n. 569 presso il Tribunale di Milano in data 14/10/2002. Pagina generata in 0.258 secondi.