Kitto: Data-driven Web Toolkit per sviluppatori Delphi

Kitto è uno strumento di sviluppo per applicazioni Web data-driven.

È nato in particolare per gli sviluppatori C/S Delphi, che si sono tradizionalmente sentiti spesso “tagliati fuori” dallo sviluppo Web, sia per la vastità di standard, strumenti e tecnologie coinvolte, sia per la loro scarsa strutturazione (al contrario di Delphi), sia anche per il fallimento o la scarsa performance di strumenti che sono stati proposti insieme alle varie versioni di Delphi  al riguardo.

L'obiettivo è continuare a scrivere la logica applicativa in Delphi, poter contare su un supporto all'accesso ai dati al livello di quanto sempre offerto in area C/S, avere strumenti veloci e flessibili per descrivere l'interfaccia utente di un'applicazione sofisticata che girerà lato client nel browser.

 

Architettura di Kitto

La struttura di un'applicazione Kitto è assimilabile ad una struttura MVC . Architetturalmente, i componenti del sistema dialogano secondo il seguente schema:

Kitto Architecture

Gli elementi sono:

  • L' applicazione   __ , cioè l'eseguibile contenente il motore di Kitto, le librerie server selezionate e la business logic. Rispetto al web server, si comporta come un application server.

  • Il server web  __ che è un'istanza di Apache  con il modulo FastCGI e che può risiedere anche su una macchina diversa (su qualunque sistema operativo supportato da Apache).

  • Il server database  __ raggiungibile via DBX oppure ADO - con la possibilità di integrare altre librerie di accesso ai dati - e che può risiedere anch'esso su un'altra macchina e qualunque sistema operativo supportato.

  • Il browser web  __ che sta sul lato client e che può essere Firefox, Google Chrome, Internet Explorer, Safari, Opera... su cui vengono utilizzate le librerie ExtJS  per la gestione dell'interfaccia utente (ma non serve conoscere ExtJS nè Javascript per creare applicazioni KItto).

Tecnologie

Kitto funziona con diversi motori di database. Le applicazioni fino ad ora create con Kitto lavorano con Firebird , Microsoft SQL Server e con tutti i database supportati dalle tecnologie ADO di Microsoft e DBExpress di Embarcadero. L'aggiunta del supporto per un nuovo database è un'operazione semplice e rapida in Kitto.

Per chi sviluppa, il cuore di Kitto è realizzato in Delphi 2010 /Delphi XE  per Win32 o Delphi XE2  per Win32  o Win64 . Ad oggi un'applicazione Kitto può girare su piattaforma Windows (non necessariamente Windows Server)con Apache. Non escludiamo la possibilità di rendere disponibile Kitto per altri web server, come IIS, o per altri sistemi operativi, in base alle richieste. È possibile estndere Kitto a livello di sorgente per ottenere un livello di personalizzazione totale; va comunque tenuto presente che buona parte delle attività necessarie a creare un'applicazione con Kitto non richiede la conoscenza di Delphi né skill da sviluppatore esperto.

Stiamo preparando la documentazione completa, che rilasceremo a breve.

Disponibilità

Siamo in procinto di rilasciare il motore di Kitto, comprensivo di tutti i sorgenti e di una versione personalizzata di ExtPascal, sotto licenza Open Source. Oltre a ciò, rilasceremo a pagamento una versione estesa comprensiva di strumenti di sviluppo come un IDE interattivo, con wizard, verifica automatica di validità dei file di configurazione, reverse engineering del database, e altre funzioni per velocizzare lo sviluppo.

Download e documentazione

Abbiamo realizzato alcune applicazioni dimostrative create con Kitto, presentate in anteprima all'IT-DevCon 2011 e scaricabili da questo sito nei prossimi giorni. Il kit contiene un piccolo database (Firebird) di prova, nonché la documentazione di riferimento che vi potrà aiutare a farvi un'idea più precisa dell'architettura di Kitto.


Ethea utilizza
le tecnologie: