Nei giorni scorsi ho iniziato a "smontare" Expeditor per capire meglio cosa c'è, cosa non c'è e cosa possiamo aspettarci.
Expeditor in quanto prodotto (client / server / mobile) è un semilavorato, ovvero un insieme di funzionalità da cui partire per realizzare velocemente applicazioni di classe enterprise e gestirne il ciclo di vita nelle grandi aziende.
Ma Expeditor è anche molto di più, è la piattaforma su cui già oggi si basa il client Sametime 7.5 connect, il futuro Hannover Client (Notes 8), i futuri componenti client di Activity Explorer e poi potremmo aggiungere Shangai e chissà cos'altro.
Per partire nell'esplorazione, un pò di background storico:
In principio fu Eclipse V 1.0:
- Una virtual machine JAVA
- Un sistema grafico ottimizzato per ogni piattaforma (Windows / Linux etc) detto SWT (Standard Widget Toolkit)
- Un IDE java molto evoluto
Voluto e creato da IBM per supportare tutti i suoi tool di sviluppo e poi rilasciato al mondo OpenSource
Poi arrivò la versione 2.0:
- Aperto, supportato dalla community e dall'eclipse foundation la versione 2.0 rappresentà la stabilità e la maturità della piattaforma.
- Migliaia di bug corretti e la reingenierizzazione dell'architettura.
Poi arrivò la versione 3.0 e il mondo cambiò:
La versione 3 in realtà si è articolata in 3.0, 3.1 e 3.2 ma riassumendo possiamo ricordare che con la versione 3.x otteniamo:
- OSGI: un sistema "alternativo" e standardizzato per la componentizzazione del codice e del sistema plugin (di cui parliamo prossimamente).
- RCP: ovvero l'architettura Rich Client Platform, il "sistema" che utilizzando un'architettura a plug-in consente di creare applicazioni modulari, riutilizzando codice e sfruttando funzioni di provisioning automatiche (versioni, installazione, configurazione) . Con RCP eclipse esce dal mondo degli IDE e diventa una piattaforma d'uso "generale" che si può utilizzare anche per la creazione di applicazioni classiche.
- eSWT e eRCP: le versioni embedded e mobile dei componenti SWT e MOBILE. Expeditor è il primo prodotto realmente sul mercato a sfruttare queste nuove possibilità.
Nel prossimo post spiego qual'è la logica che stà dietro ai plugin di Eclipse, come si interconnettono fra loro e come possono concorrere a creare una applicazione RCP, nella parte tre invece entreremo nel vivo per vedere dove Expeditor fa la differenza e cosa offre in più. Inoltre parlando di Expeditor inizieremo a ragionare sul cosa aspettarci in Hannover / Notes 8.0, visto la beta per ora non è ancora destinata ai comuni mortali.
A presto.
P.S.
Per parlare di Eclipse bisogna conoscere almeno un pò Java, nei prossimi post darò per scontata la conoscenza di:
- Classi e package
- I file JAR come sistema di packaging
- Il concetto di classloader
- Cosa fa un sistema grafico in JAVA (SWT o Swing)
Il resto tenterò di spiegarvelo io, a volte farò riferimento a tutorial di altri blogger o di eclipse.org e IBM Developerworks, sono in inglese lo so... ma bisogna adeguarsi. E poi .. l'inglese tecnico non è così difficile.
Se invece qualcuno vuole partecipare e scrive articoli su aree specifiche o semplicemente segnalarmi materiale utile in italiano lo inserirò direttamente nel Blog.
Comments (6)
Daniele Vistalli November 22nd, 2006 19:39:08