PDA

View Full Version : [JEE]Chiarimenti sui framework


TorpedoBlu
17-10-2007, 14:45
sapreste indicarmi qualche testo che chiarisce le differenze tra i vari tipi di
framework? cercando e leggendo le parti introduttive di molte documentazioni, mi sembra che i miei quesiti siano sottointesi (magari perchè sono concetti banali e puerili, ma ognuno ha una capacità di apprendimento differente) ti riporto parte del testo della mia domanda, anche perchè magari qualche persona che leggerà queste nostre parole lo farà perchè avrà il mio stesso bisogno:

per non parlare della confusione che si fa quando si parla di Framework (che teoricamente sono librerie che forniscono interfacce vuote appropriate e collegamenti tra di esse per essere sfruttate come scheletro di una architettura software.... almeno ho capito questo) e si mescolano con container, appl. server, MVC e tutte (o nessuna) le componenti dell'architettura JEE. Ho solo capito che c'è molta confusione (per chi è del settore non se ne accorge, ma per chi ci entra la prima volta rimane spaesato) tra i nomi dei prodotti e le loro funzionalità. ..

(Nel frattempo il libro che sto leggendo è "JEE5 Sviluppo di applicazioni web", che non parla di framework e comunque sto finendo di comprendere lo strato di presentazione, MVC, action e Factory/Command quindi Business e Itegration ancora non li ho visti)

gokan
18-10-2007, 08:28
Piuttosto che sapere cosa sia esattamente, quello che interessa è sapere utilizzare veramente un framework :p

Prendi ad esempio Spring. E' considerato un framework, una delle caratteristiche di esso è che esistono sotto progetti che completano alcuni settori (vedi ad esempio Spring Web Flow).
Ad esempio, inizialmente utilizzavo in maniera massiccia la parte di MVC di spring, adesso, da quando uso SWF, molti dei controller sono spariti per fare spazio a dei gestori di flusso.

Tu parli di differenza tra framework (quali?)
Se non si studiano e comprendono non è mica una cosa semplice fare dei paragoni!

TorpedoBlu
18-10-2007, 13:19
Piuttosto che sapere cosa sia esattamente, quello che interessa è sapere utilizzare veramente un framework :p

Prendi ad esempio Spring. E' considerato un framework, una delle caratteristiche di esso è che esistono sotto progetti che completano alcuni settori (vedi ad esempio Spring Web Flow).
Ad esempio, inizialmente utilizzavo in maniera massiccia la parte di MVC di spring, adesso, da quando uso SWF, molti dei controller sono spariti per fare spazio a dei gestori di flusso.

Tu parli di differenza tra framework (quali?)
Se non si studiano e comprendono non è mica una cosa semplice fare dei paragoni!

dunque hai ragione, ti spiego:
Per una tesi sto studiando la teoria su AOP (AspectOrientedProgramming - ossia un modo di intercettare crosscutting concerns come logging, persistenza, sicurezza, ecc.. in maniera trasversale, accoppiato al classico OOP) e vorrei analizzare la sua applicazione alle web application.
Essendo a digiuno di JEE sto leggendo questo libro sull'argomento;
" Java Enterprise Edition 5. Progettazione e sviluppo di applicazioni web"
http://www.wmlscript.it/libri/recensione.php?id=70

Per poi passare alle documentazioni ufficiali di ciò che sceglierò. Questo libro parla della base (JSP, Servlet, e i 3 strati Presentazione, Business, Integrazione) senza fare uso di framework, ma descrive semplicemente JEE5, e vedo che nei capitoli su Business e Integrazione fa riferimento a EJB3.

Portandomi avanti con gli argomenti da studiare vedo che 1 tutti usano Framework per lo sviluppo e 2 ci sono framework che vengono usati con il paradigma da me studiato (Spring2, JbossAOP, Aspectwerkz e EJB3 tramite le annotations). Il fatto è che per ora che sono al capitolo 5 del libro (sto finendo MVC) ancora non so come funzionano Business e Integrazione e soprattutto il concetto di framework mi è abbastanza estraneo, nel senso che per ora non capisco bene se sono delle librerie evolute che vengono chiamate tali (visto che forniscono interfacce da sviluppare e pattern gia pronti) oppure sono parte integrante della futura applicazione (ed in quanto tali la loro configurazione è importante) e cosa posso usare per fare confronto. (si possono installare 2 o 3 assieme? dipendono da container diversi? fanno cose diverse? comunicano assieme? oltre a capire cosa fanno come faccio a capire cosa sono in realtà senza leggere migliaia di pagine di documentazione per capire se possono servirmi o meno?

gokan
18-10-2007, 19:24
Guarda, io dal punto di vista teorico son ben poco.
So solo che se voglio fare una cosa, leggo le reference del framework e se è possibile applico la soluzione al mio problema.

Ad esempio, per spring, si tratta di prendere alcuni JAR, buttarli dentro al tuo progetto e poi lavorare su diversi file XML di configurazione.

Mi sembra di capire che la tua tesi sia più teorica che pratica, quindi ti tocca leggere tonnellate di materiale :D