Tutorials

  • Presto on-line...

About ...

  • ... questo sito
  • ... me


Introduzione a WebObjects [1]

WebObjects
WebObjects è una piattaforma object-oriented per lo sviluppo di applicazioni Web.... anzi no! E' qualcosa di più!!!

Primi passi

Il 20 Dicembre 1996 la Apple comunicò ufficialmente la sua decisione di acquisire la Next di Steve Jobs, Chairman and CEO della NeXT Software, per circa 400 milioni di dollari. Da questa operazione, la Apple si portò in casa un meraviglioso gruppo di ingegneri, il loro sistema operativo (NEXTSTEP che diventò il nostro MacOS X) e WebObjects… un prodotto venduto fino a pochi anni fa per la non indifferente cifra di 50’000 $ (si, 50 mila!!!).

A seguito della volontà di allargare la base di installato, durante il keynote della WWDC di maggio 2000, Steve comunicò che la versione unlimited sarebbe stata messa in vendita ad un nuovo prezzo: 700 dollari. Fu così che WebObjects diventò un prodotto molto più interessante… e diffuso!!!!

WebObjects è un Application Server composto da alcuni tool di sviluppo piuttosto ben integrati ma il piatto forte è rappresentato dall’insieme di frameworkmaturi e ben collaudati che ci supportano nel processo creativo dell’applicazione.

Vediamo prima quali sono gli strumenti che abbiamo a disposizione per lavorare e successivamente approfondiamo i frameworks e la logica di programmazione.

I tools di sviluppo

WO ci permette di progettare diversi tipi di applicazioni. Possiamo evidentemente sviluppare Applicazioni Web per la generazione dinamica delle pagine HTML ma possiamo anche sviluppare dei Web Services basati su messaggi SOAP (Simple Object Access Protocol) che “agganciano” i documenti XML e inviano i messaggi mediante il protocollo HTTP (per fare un solo esempio, tramite i Web Services possiamo creare un nuovo servizio di ricerca per Sherlock).

Infine possiamo creare delle Desktop Applications in Java svincolandoci dalla rigidità dell’HTML e liberando tutta la potenza e la versatilità di WO (tipicamente, è facile immaginare come un tool di amministrazione di un sito dinamico (il back-end) possa essere più efficace ed efficiente se distribuito nella forma di una applicazione e non in quella di una serie di pagine Web!).

Vista la vastità e la complessità di WO, limiteremo questa serie di articoli introduttivi al solo aspetto Web di WebObjects tralasciando momentaneamente tutto ciò che non riguarda direttamente la generazione dinamica di pagine HTML…

WebObjects Builder:

WebObjects Builder è un’applicazione che ci assiste nell’editing HTML delle pagine dinamiche ma soprattutto ci viene in aiuto nel mapping dei componenti dinamici e nell’integrazione tra il codice Java e le parti visuali del nostro prodotto. Non è un editor HTML molto evoluto, a tutt’oggi è presente una limitatissima rappresentazione visiva del codice CSS… ma il suo punto di forza sta nella gestione (questa sì, visiva ed intuitiva) dei componenti dinamici di WO. Per fare un esempio, nella foto a sinistra si sta componendo una <FORM> HTML ed è possibile vedere come con un drag&drop sia possibile collegare una variabile Java (partPrice) ad un campo di editing.
Questa operazione viene resa possibile grazie al fatto che WebObject Builder interpreta non solo la pagina .html che stiamo editando ma anche il relativo codice Java ad essa associata mostrandoci, nella parte bassa della finestra, le variabili utilizzate e le eventuali funzioni eventualmente utilizzabili.

EOModeler:

L’EOModeler è una applicazione che permette di specificare un mapping degli oggetti di qualsiasi DB JDBC o JNDI. Una volta costruito il modello dei dati che l’applicazione WO dovrà utilizzare, l’EOModeler genera automaticamente le classi Java che rappresentano le tabelle del DB ed un file .eomodeld che WebObjects utilizza per gestire trasparentemente le relazioni, le chiavi primarie, i criteri di ordinamento, le conversioni dei tipi Java nei tipi SQL, le regole di cancellazione di una tupla (record/entity) e tanto altro ancora…

WebObjects è in grado di gestire diversi file .eomodeld: è quindi possibile interfacciarsi a più DB contemporaneamente, anche di Vendor diversi, per esempio possiamo utilizzare una tabella mySQL per la gestione di un catalogo mostrando la colonna dei prezzi unicamente agli utenti registrati su un DB Oracle…

Xcode:

Xcode: un ambiente di sviluppo integrato con funzionalità di compilazione, editing, debugging e gestione dei progetti.
Xcode si integra perfettamente con WebObjects Builder di modo che una modifica sul codice Java viene subito resa visibile all’interno dell’editor HTML… e viceversa, dall’editor HTML posso creare nuove variabili o funzioni che si riflettono sulla relativa classe Java.
Xcode è piuttosto comodo da usare ed è ricco di features molto interessanti. Vi rimando ad una pagina di Apple per una breve introduzione: Xcode.

Per approfondimenti

Due parole presenti sulle pagine italiane della Apple:


WebObjects secondo wikipedia (in inglese):

Posted on Nov 21, 2003 - 04:42 AM


Ricerca:


Adv:

ApplePro :
Vuoi acquistare un prodotto dalla Apple? Sei un utente Pro (cioè hai la partita IVA)? Se vuoi supportare il nostro sito, passa da qui: apple pro.