Dove iniziare quando si scava in una base di codice J2EE esistente?

1

Lavoro per un'azienda che produce applicazioni aziendali che devono essere utilizzate da scuole e distretti per gestire tutti i loro test e dati sugli standard. La loro applicazione esistente è scritta in J2EE ed è molto grande. Personalmente sono uno sviluppatore esperto di PHP e Ruby = RoR e mi è stato chiesto di tentare di implementare funzionalità aggiunte ma fondamentali per una base di codice J2EE esistente. Ho molta familiarità con Java SE e conosco bene l'architettura di un'applicazione web.

Quello che sto chiedendo è, basterà questo per il compito da svolgere e quali suggerimenti puoi darmi per scavare nel codice base e aggiungere effettivamente in modo efficace queste nuove funzionalità? C'è qualcosa di importante che devo sapere prima di iniziare e che cosa posso aspettarmi in termini di problemi e problemi derivanti da uno sfondo di Java SE, PHP, RoR?

Il tempo non è un problema, dovrei avere tutto il tempo per familiarizzare con J2EE. Nota anche che la sintassi non sarà un problema qui.

    
posta Johnny Rotten 12.06.2012 - 22:02
fonte

2 risposte

3

Java EE è molto ampio. Ci sono molte di librerie e framework là fuori, quindi il mio suggerimento sarebbe quello di conoscere quelli usati dall'applicazione. Per lo meno capire i problemi che stanno risolvendo e come li stanno risolvendo. Alcuni concetti saranno familiari, altri impiegheranno più tempo per capire.

Domande da porsi:

  • Si sta utilizzando il motore servlet (Tomcat) o un server aziendale completo (JBoss, WebLogic)? Se si tratta di un server aziendale, individuare le funzionalità del server che l'applicazione sta utilizzando e quelle che vengono esternalizzate ad altri framework o librerie. Per lo meno, capire cos'è un servlet e come sono configurati e gestiti dal server stesso. Comprendi cosa sono i file WAR (e possibilmente EAR) e come sono strutturati i file in essi.
  • Esiste un framework per le dipendenze come Spring o Guice? Se esiste, questi quadri probabilmente dettano molto su come è strutturata l'applicazione. Familiarli bene.
  • Come viene gestita la persistenza del database? Usa semplicemente SQL, Hibernate (o qualche altra implementazione JPA) o qualcosa di completamente diverso? È probabile che ci siano alcune cose da imparare in quest'area, specialmente se viene utilizzato un framework DI.
  • Sta usando semplici servlet e JSP o, sta usando un altro framework web? Se esiste un framework DI, è probabile che il framework web sia configurato con esso. Scopri come gli oggetti (come le richieste HTTP) hanno un ambito in relazione al resto dell'applicazione.
  • Se l'applicazione non utilizza JSP, è probabile che utilizzi un altro motore di template come Velocity o Freemarker. Anche se utilizza i JSP, alcuni framework web hanno i loro tag JSP e si aspettano che tu li usi.

Penso che questi siano tutti i punti principali da considerare quando ci si immerge in un'app Java EE per la prima volta.

    
risposta data 12.06.2012 - 22:16
fonte
3

Le basi di tutto il web relative al mondo Java sono le API Servlet e le sue specifiche. Se non lo sai, ora è un buon momento per impararlo. Per Java EE devi stare lontano da Servlet 3.0 (il più recente) e guardare solo a 2.5 o addirittura a 2.4.

Quindi scrivi alcuni servlet (la generazione dell'immagine di solito è un buon candidato per questo) e poi guarda come scrivere applicazioni web Java. Ciò include le pagine JSP e le distribuzioni WAR. Prendi confidenza con questo, specialmente con i barattoli di libreria e i tagli di JSP ecc. Scopri come eseguirne il debug nel tuo IDE (molto importante).

Lo stack Java EE completo è forse 10 o 20 volte più grande da imparare di questo. In quel passo puoi determinare se sei disposto a percorrere il resto.

    
risposta data 12.06.2012 - 22:45
fonte

Leggi altre domande sui tag