|
Dev Lab Borland Kylix è un ambiente di sviluppo visuale ed object-oriented per lo sviluppo rapido di applicazioni (RAD). Kylix permette lo sviluppo di applicazioni a 32-bit per Linux su architetture Intel ed include una libreria di componenti, una suite di strumenti di sviluppo, alcuni modelli di applicazione predefiniti e una serie di wizard Borland Kylix 2 Enterprise
Gli strumenti di sviluppo Borland sono, da sempre, considerati tra i migliori nell’ambito di quelli a disposizione in commercio. A partire dagli anni 80, in cui Borland produceva Turbo Pascal per la programmazione di applicazioni in ambiente DOS; fino ad arrivare a Delphi (oggi alla versione 6) con cui Borland dava inizio alla produzione di strumenti "RAD" per lo sviluppo rapido di programmi con interfaccia grafica in ambiente Windows. Un’azienda lungimirante, Borland, che quindi non poteva non occuparsi di un fenomeno in forte espansione come Linux, producendo anche per questo sistema operativo uno strumento di sviluppo RAD. In questo ultimo anno l’intento principale di Borland è stato quello di mettere a disposizione una suite di strumenti per lo sviluppo rapido di applicazioni cross-platform. In questo articolo vengono mostrate le caratteristiche principali della versione Enterprise di Kylix. Sono, in particolare, evidenziate le novità rispetto alla versione precedente e con Delphi 6. L’articolo inizia con una panoramica sull’ambiente di sviluppo integrato (IDE) di Kylix, comprendendo l’analisi degli strumenti per la gestione del codice e dei progetti. L’analisi prosegue con la presentazione dei componenti per lo sviluppo di applicazioni orientate alla gestione dei dati su Web ed i Web Service. In conclusione saranno mostrate le caratteristiche che facilitano la compatibilità a livello di codice sorgente tra le piattaforme Windows e Linux.
L’IDE di Kylix All’avvio di Kylix appare l’insieme degli strumenti dell’IDE: toolbar, menu, palette delle componenti, editor per il codice, code explorer ed il project manager. La finestra principale, che occupa la parte alta dello schermo, contiene il menu, le toolbar (per un accesso immediato alle funzioni del menu più utilizzate) e la palette dei componenti. Il project manager è lo strumento utilizzato per gestire ed organizzare i moduli di un progetto (form, unit, risorse, oggetti e file di libreria) in maniera semplice ed intuitiva. Questo tool può essere utilizzato anche per combinare e visualizzare informazioni su più progetti all’interno di un singolo "gruppo di progetti", utilizzato anche per compilare contemporaneamente tutti i progetti che ne fanno parte. Il browser dei progetti è lo strumento con il quale, attraverso una rappresentazione schematica, vengono mostrate le caratteristiche di un progetto nei suoi dettagli: classi, unit, simboli globali (tipi, proprietà, metodi, variabili e procedure). Questo strumento si rivela molto utile nella fase di sviluppo per navigare all’interno del codice prodotto. Se ad esempio stiamo editando una funzione membro di una classe e vogliamo spostarci in un’altra funzione, sarà sufficiente cliccare due volte sul nome di un membro per trovarci immediatamente nel corpo della funzione voluta. Un altro utile tool messo a disposizione dall’IDE di Kylix è il repository degli oggetti (Object Repository) che contiene componenti, con caratteristiche generali, pronti per essere utilizzati o ereditati, nei progetti. La caratteristica fondamentale di Kylix (ed in generale degli strumenti RAD) è la metodologia con cui, nei progetti, si costruiscono le interfacce utente. Uno strumento RAD permette di comporre, nel vero senso della parola, una applicazione a partire da "mattoncini" software predefiniti; quindi è possibile trovare componenti visuali come bottoni, edit box oppure label; e componenti non visuali quali: data module, timer oppure socket. Oltre a quelle elencate in precedenza, ci sono altre caratteristiche "minori" dell’IDE: Code Completion, Code Parameters e Code Templates. Queste caratteristiche sono utilizzate all’interno dell’editor del codice di Kylix e sono importantissime per velocizzare la scrittura dei programmi fornendo, durante la digitazione, aiuti al programmatore come, ad esempio, la lista dei parametri di una funzione di cui stiamo effettuando una chiamata oppure la lista dei membri di un oggetto.
Sviluppo di applicazioni con Kylix Un’applicazione con Kylix viene creata raggruppando form, codice sorgente e risorse in un progetto: una collezione di file generata dal programmatore e dall’ambiente al fine di ottenere le specifiche dei moduli da compilare e per poter eseguire una compilazione incrementale dei soli moduli effettivamente modificati. Tutte le distribuzioni di Kylix 2 supportano la programmazione di un’ampia gamma di applicazioni grafiche, oggetti condivisi, package ed altri programmi. La novità maggiore nella versione che abbiamo testato, l’Enterprise Edition, consiste nella possibilità di utilizzare componenti per lo sviluppo di Web Service: BizSnap, WebSnap, DataSnap. BizSnap, estende le funzionalità di Linux e Apache con il supporto per XML e tecnologie WSDL e SOAP. La piattaforma di sviluppo BizSnap semplifica l’integrazione business-to-business mediante l’utilizzo di XML/SOAP per connettere in modo trasparente applicazioni WEB. Kylix, inoltre, permette di scambiare, trasformare e manipolare documenti XML e creare applicazioni che possano comunicare direttamente con quelle dei partner, con piattaforme abilitate ai Web Service come .Net e BizTalk di Microsoft e Sun ONE di Sun Microsystems. WebSnap rende Apache un potente server di classe enterprise per applicazioni Web database-driven. La potenza e la velocità dello sviluppo RAD basato su componenti è utilizzato, con WebSnap, anche nello sviluppo di applicazioni Web per Apache. Il framework offerto da WebSnap permette di portare le attuali applicazioni verso il Web attraverso un’architettura orientata agli oggetti e basata su gerarchie di pagine Web database-centric. Il supporto dei componenti WebSnap per JavaScript consente anche una semplice personalizzazione ed integrazione delle applicazioni all’interno del proprio sito Web sviluppato con strumenti tradizionali quali Microsoft FrontPage e Macromedia Dreamwaver. DataSnap supporta i più diffusi database server grazie ai driver nativi per Oracle, DB2, Informix, PostreSQL, MySQL e Borland InterBase e si basa sull’elevata produttività di Kylix 2 per creare applicazioni scalabili all’aumentare del volume di transazioni e del numero di utenti. DataSnap, basato su tecnologie standard quali SOAP, serve ad integrare applicazioni esistenti in primo luogo quelle per e-commerce. DataSnap è lo strumento messo a disposizione da Borland per la creazione di middleware di accesso ai dati aperti ai Web Service scalabili ed integrabili all’interno di soluzioni complete per l’e-business. Per concludere quello che è importante riconoscere a questa versione di Kylix è la decisione con cui Borland si vuole imporre nel mercato degli strumenti per lo sviluppo di Web Service. Kylix, infatti, include il supporto nativo per la costruzione di "Connettori" SOAP, la manipolazione di "Repository" UDDI e la generazione di interfacce mediante WSDL. L’attenzione verso le tecnologie XML per la gestione dei dati pervade tutto il framework contenuto in Kylix. Nella versione 2 Enterprise Edition, infatti, sono presenti classi per la trasformazione di documenti XML in dataset per permetterne un facile accesso. La utility XMLMapper permette il mapping di un documento XML direttamente in un ClientDataSet. Dopo aver fatto la trasformazione è possibile creare un’applicazione che caricherà i dati del documento XML direttamente in un ClientDataSet per permetterne la manipolazione attraverso i componenti del framework DataCLX.
Compatibilità Delphi e Kylix Secondo quanto affermato da Borland, sviluppare applicazioni cross-platform con questi due strumenti è immediato. Combinando Delphi con Kylix le aziende possono sviluppare applicazioni cross-platform e di classe enterprise che integrano con la tecnologia Web Service, standard industriali come SOAP, XML e WSDL. Con questi standard è possibile realizzare la vera indipendenza dal linguaggio e dalla piattaforma. Rimanendo nell’ambito delle applicazioni non Web-aware, le compatibilità tra i due strumenti è piena se si segue l’accortezza di sviluppare le applicazioni utilizzando il framework CLX. La versione 6 di Delphi supporta i quattro componenti fondamentali: BaseCLX, VisualCLX, DataCLX e NetCLX (per altro già presenti in Kylix 1); quindi un’applicazione che utilizzi solamente questi quattro framework sarà senz’altro pienamente portabile tra le due piattaforme. La conclusione, quindi, è che un ambiente come Kylix, in cui lo sviluppatore utilizza componenti "preconfezionati", agevola i programmatori a focalizzare la propria attenzione sulla "business logic" piuttosto che sull’ambiente in cui sono sviluppate le applicazioni.
Pro L’ambiente di sviluppo facilita la realizzazione, su piattaforma Linux, delle interfacce grafiche e delle relative applicazioni. Un altro vantaggio è rappresentato dall’introduzione nella versione 2, di strumenti per sviluppare Web Service rendendo semplice un compito abbastanza complesso. Ultimo ma, sicuramente, non meno importante: il compilatore Object Pascal fornito assieme a Kylix produce eseguibili altamente ottimizzati.
Contro Non sono stati riscontrati "svantaggi" nell’utilizzo del prodotto. Unica nota negativa è rappresentata dall’alto prezzo, specialmente della versione da noi recensita. Questo svantaggio è ancora più notevole se si pensa che, solitamente, le aziende proponenti soluzioni software per Linux lavorano adottando la filosofia free software o addirittura, open source.
Scheda Prodotto
|