Così tanti libri J2EE, così poco tempo

Quando si tratta di J2EE (Java 2 Platform, Enterprise Edition), non si conosce una montagna di Enterprise JavaBeans (EJB). Non preoccuparti, troverai molto materiale di lettura per darti una mano. In effetti, potresti trovare troppo! Sono qui per aiutarti a restringere le scelte a un unico libro che puoi portare in libreria senza contrarre l'ernia.

J2EE è una raccolta multiforme di tecnologie lato server che insieme costituiscono la base di potenti applicazioni aziendali. Non ti annoierò con un'altra panoramica di J2EE; è probabile che tu ne abbia già letto uno o più. Inoltre, uno qualsiasi dei quattro libri J2EE che recensisco qui vi darà una tale panoramica.

In questo articolo, rivedo i seguenti quattro libri J2EE:

  • CodeNotes per J2EE: EJB, JDBC, JSP e Servlets, Robert McGovern e Stuart Charlton, a cura di Gregory Brill (Random House, 2002; ISBN: 0812991907)
  • Java per il Web con servlet, JSP e EJB, Budi Kurniawan (New Riders Publishing, 2002; ISBN: 073571195X)
  • Programmazione server Java professionale, edizione J2EE 1.3, Cedric Beust et al. (Wrox Press, 2001; ISBN: 1861005377)
  • Sams Teach Yourself J2EE in 21 Days, Martin Bond, Dan Haywood, Debbie Law, Andy Longshaw e Peter Roxburgh (Sams, 2002; ISBN: 0672323842)

Oltre ai meriti di ogni libro, approfondisco anche le loro risorse bonus come siti web o CD. Infine, riassumo i miei confronti e ti do una risposta definitiva su quale sia la migliore.

Quando leggo la recensione di un libro, soprattutto una recensione comparativa, voglio risposte inequivocabili. Per questa recensione, quindi, rispondo alla domanda: "Durante il mio viaggio di quattro giorni con lo zaino in spalla nell'Emigrant Wilderness la prossima settimana, quale libro porterò?"

Libri J2EE a colpo d'occhio
  CodeNotes per J2EE: EJB, JDBC, JSP e Servlet Java per il Web con servlet, JSP e EJB Programmazione server Java professionale, edizione J2EE 1.3 Sams insegna a te stesso J2EE in 21 giorni
Prezzo (US $) 9.95 9.99 4.99 9.99
Pages 222 953 1.248 1.094
Peso 9.25 oz. 3 libbre, 5 once 4 libbre, 1 oz. 4 libbre, 1,5 once
Indice Di base Buona Buona Buona
Glossario No No No
CD ROM No Sì, di base No Sì, bene
Autori 3 1 13 5
Versione J2EE coperta 1.2.1 1.3 * 1.3 1.3

* Non esplicitamente dichiarato; L'ho dedotto dal fatto che copre Servlet 2.3, JSP 1.2 e EJB 2.0.

CodeNotes per J2EE: EJB, JDBC, JSP e Servlet

A 222 pagine, CodeNotes per J2EE: EJB, JDBC, JSP e Servlets è notevolmente più breve dei suoi fratelli (o pensavi che fosse un errore di battitura?). La serie CodeNotes si sforza di insegnare qualsiasi argomento tecnico in meno di 200 pagine, un concetto lodevole.

Il sitoweb

Sebbene fin dall'inizio prediligessi CodeNotes per J2EE: EJB, JDBC, JSP e Servlet , mi ha dispiaciuto apprendere come il team di scrittura abbia ottenuto un po 'di lucentezza: relegano periodicamente vari argomenti al sito Web CodeNotes (il libro non include un CD).

Lo considero un po 'un inganno, ma in pratica non l'ho trovato così doloroso. Inoltre, potevo discriminare un po 'di più su ciò che avevo bisogno di leggere. Normalmente, quando leggo un libro, leggo parti non necessarie, a meno che non siano davvero lunghe e chiaramente irrilevanti. In questo caso, se un particolare riferimento non è pertinente, non mi prenderò la briga di leggerlo sul Sito.

Sfortunatamente, quando volevo cercare un argomento sul sito Web CodeNotes, ho trovato il sito lento e inaffidabile. Le ultime volte che ho provato ad accedervi, ho ricevuto un messaggio "Impossibile connettersi al server JRun", non un'applicazione stimolante delle tecnologie J2EE. Diamo loro il beneficio del dubbio e attribuiamolo a un problema hardware; si spera che quando leggerai questo, il sito sia di nuovo online.

Il libro

Per quanto riguarda il libro stesso, ironia della sorte, gli autori dedicano troppo tempo (o troppe pagine, per così dire) su argomenti che è meglio relegare al sito. In particolare, il materiale introduttivo JDBC (Java Database Connectivity) sembra del tutto inutile, poiché numerosi altri libri trattano solo JDBC.

Allo stesso modo, la copertura servlet di base e JSP (JavaServer Pages) potrebbe essere ridotta (o spostata sul sito Web) in un libro di questo tipo. Essendo un libro scarno (una buona cosa), dovrebbe scorrere velocemente quegli aspetti J2EE ben trattati in letteratura. La mia ipotesi è che chiunque si imbarchi in un serio lavoro su J2EE probabilmente possiede già una ricca libreria, inclusi libri su Java stesso, Swing, JDBC, servlet, SQL e JavaScript, tra gli altri.

CodeNotes per J2EE: EJB, JDBC, JSP e Servlet hanno un indice scarso e le intestazioni vaghe del sommario, come "Neat Tricks" e "Core Concepts", non mi hanno aiutato a trovare argomenti specifici. Se non avessi saputo con certezza che il libro trattasse un argomento particolare, avrei pensato che il libro non lo coprisse e avrei rinunciato.

CodeNotes per J2EE: le piccole dimensioni di EJB, JDBC, JSP e Servlets si dimostrano utili per imparare in movimento, leggere una o due pagine mentre si è in attesa dal dentista o mentre si sorseggia un double shot, no-whip, mocha senza grassi Valencia al caffetteria locale. Il problema più grande del libro: semplicemente non è aggiornato con J2EE 1.3. Il libro copre J2EE 1.2.1, ma non è (ancora) stato aggiornato. Ad esempio, il libro menziona i fagioli guidati dai messaggi come una caratteristica in arrivo , ma non spiega ulteriormente.

Per riassumere

Nonostante tutte le mie lamentele, mi piacevano CodeNotes per J2EE , in generale. Mi piace un libro che sfreccia attraverso il materiale e non blaterare o ripetere i punti fatti in precedenza. In effetti, vorrei che più editori favorissero questo stile. Quindi, gente di CodeNotes, per favore smettila di perdere tempo a scrivere materiale .Net e aggiorna il tuo libro J2EE!

Java per il Web con servlet, JSP e EJB

Ho trovato Java per il Web con Servlet, JSP e EJB un testo generalmente lucido, per lo più ben scritto, ma non privo di occasionali intoppi letterari.

Budi Kurniawan adotta un approccio pragmatico per risolvere alcuni problemi specifici, come il download di file programmabile (download di file con autenticazione) e il caricamento di file, un e-book online e un semplice esempio di carrello della spesa. Tuttavia, alcuni di questi esempi sembrano un po 'approssimativi. Ad esempio, l'esempio di "E-Book basato su XML" sembra un po 'poco convincente. Sebbene Kurniawan esalti i vantaggi dell'e-book rispetto ai libri cartacei, smentisce la sua tesi non avendo pubblicato alcun materiale in formato e-book. L'esame del progetto e-book rivela i motivi: lo ha progettato in modo tale che ogni argomento sia un file HTML separato e l'albero dei contenuti sia un file XML. Gestire un libro in quella forma sarebbe un incubo assoluto. Nonostante ciò, l'e-book rappresenta un punto di partenza che potrebbe essere raffinato in qualcosa di più gestibile (a sinistra,naturalmente, come esercizio per il lettore).

La debacle di JavaScript

Per qualche ragione, Kurniawan dedica più di 100 pagine a discutere di JavaScript; doppiamente confuso perché la sua conoscenza di JavaScript sembra limitata ei suoi esempi sono orrendi. Fa affermazioni palesemente false sulle funzionalità JavaScript: "Quando lavori con oggetti in JavaScript, l'oggetto array è fondamentalmente la tua unica scelta" (p. 621) e utilizza uno stile di programmazione scadente. Afferma inoltre che JavaScript dovrebbe essere utilizzato per l'indipendenza del browser (p. 485), ma ciò è in conflitto con diversi interi capitoli sui capricci della codifica JavaScript ("Verifica se JavaScript è abilitato", "Gestione di browser non consapevoli di JavaScript", "Gestione diversa Versioni di JavaScript "e così via), per non parlare della realtà. A torto oa ragione, questo getta un'ombra lunga e scura sulla credibilità del libro.

Java per il Web con servlet, JSP ed EJB include 76 pagine di materiale di riferimento J2EE, un sottoinsieme dei Javadoc forniti gratuitamente con J2EE, che considero uno spreco di alberi (il tipo che cresce nella foresta, non il tipo realizzato con JavaScript disorientato dagli oggetti). Chi cerca le chiamate API in un libro? I Javadoc sono più veloci e hanno maggiori probabilità di essere aggiornati. Un po 'di liposuzione sul JavaScript e sul materiale di riferimento, oltre a un ridimensionamento delle risme diout.println("

"); le righe in alcuni esempi di servlet ridurrebbe questo libro di oltre il 20%.

Il cd

Java per il Web con servlet, JSP ed EJB include un CD i cui esempi di codice scarsamente popolati sarebbero sicuramente meglio pubblicati su un sito Web. Forse il CD aumenta il valore percepito del libro, dandogli un piccolo vantaggio rispetto ai libri senza CD sullo scaffale della libreria? Il CD contiene i bean di caricamento e scaricamento dei file di Kurniawan, ma non include i loro Javadoc.

Stranamente, gli elenchi di codice del CD risiedono in file di testo con nome chapter-section.txt che dovresti rinominare per essere di qualsiasi utilità. Ad esempio, dovresti copiare e rinominare il primo esempio di codice, denominato 01-01.txt, TestingServlet.javaprima di poterlo utilizzare.

Siti web

Né il sito New Riders né il sito BrainySoftware includono informazioni non presenti anche nel libro o nel CD.

Per riassumere

Forse gli editori ritengono necessario avere un grosso libro sullo scaffale per un argomento formidabile come J2EE. Penso che i capitoli JavaScript potrebbero essere sostituiti con profitto da un semplice riferimento a qualsiasi libro specifico JavaScript. Con il mio zaino che pesa già più di 40 libbre, tutte quelle pagine non J2EE sembrano piuttosto pesanti.

Programmazione server Java professionale

Entrando in questa recensione, devo ammettere il mio pregiudizio iniziale contro la banda di tredici Professional Java Server Programming . Pensavo che tanti cuochi avrebbero prodotto un menu sparso e disorganizzato. Sono lieto di segnalare, tuttavia, che il mio pregiudizio si è rivelato sbagliato. Forse un argomento ampio e diversificato come J2EE si presta alla scrittura di gang? La programmazione professionale di Java Server copre sia ampiamente che profondamente J2EE (non sorprende, dato che ha il maggior numero di pagine e la stampa più piccola delle quattro che ho recensito).

La programmazione professionale di Java Server copre a fondo JNDI (Java Naming and Directory Interface), vari aspetti dei servlet, JSP e librerie di tag, JavaMail, i vari tipi di EJB, JMS (Java Message Service), J2EE Connector Architecture (JCA), servizi Web e distribuzione.

Sul lato negativo, devo menzionare i due difetti fisici del libro: in primo luogo, con numerose copertine di libri attraenti offerte da editori come Manning, New Riders e O'Reilly & Associates, penseresti che Wrox Press potrebbe produrre una copertina più interessante di un collage di 13 nerd. Cosa stavano pensando? Inoltre, con una nota leggermente meno ironica, la rilegatura di bassa qualità del libro ha provocato le pagine che si staccano e svolazzano (e no, non perché ho provato a strappare la copertina!).

Il sitoweb

Sebbene Professional Java Server Programming non includa un CD, il suo sito Web include codice sorgente scaricabile e un elenco fortunatamente breve di errata. Ho avuto qualche problema nell'individuare il sito web del libro (puoi usare il comodo link qui sotto). Il libro stesso ti rimanda alla homepage di Wrox Press; una volta lì, la ricerca per ISBN 1861005377 ti farà risparmiare la maggior parte dei problemi.

Per riassumere

La programmazione professionale di Java Server copre completamente J2EE. Lo troverai un buon riferimento per il desktop e una solida introduzione a J2EE. Se sei abbastanza diligente da leggerlo dall'inizio alla fine, probabilmente lo farai per un po '(in effetti è meglio che ti sbrighi se vuoi finirlo prima che J2EE 1.4 sia finalizzato!), Ma quando finisci, tu avrà sicuramente costruito una solida base J2EE.

Sams insegna a te stesso J2EE in 21 giorni

Anche il potente Sams Teach Yourself J2EE in 21 giorni attraversa un vasto territorio J2EE. Come la programmazione di server Java professionale , copre tutti i punti salienti di J2EE, nonché i modelli di progettazione e il refactoring.

Tuttavia, fin dall'inizio, ho trovato fastidioso lo stile di scrittura degli autori. Selezione di parole come "utilizza" (la versione a tre sillabe di "usa") e l'onnipresente sovraccarico della parola "contro" per indicare "a", "con" o "per" ("... usa una fabbrica di connessioni registrata contro il nome JNDI predefinito ... "(p. 406)) mi ha davvero infastidito dopo un po '.

La descrizione dei servizi di denominazione e directory del libro includeva (inventata?) Una metafora mista inversa: prima gli autori hanno equiparato una rubrica telefonica a un servizio di denominazione, quindi hanno equiparato le pagine gialle a un servizio di directory (perché le pagine gialle consentono di cercare attributi aggiuntivi, non solo un nome). Successivamente, il testo dice che una rubrica telefonica è chiamata rubrica perché in realtà è un servizio di directory (quindi cosa sono le pagine gialle adesso?) E termina con questo divertente sommario: "Il servizio di rubrica telefonica ti permette di cercare una persona o rubrica telefonica dell'azienda utilizzando il nome come chiave. " (p. 83) Hmm. Posso solo immaginare che i redattori fossero così confusi da lasciar perdere questo. Anche se cose del genere irritano la mia sensibilità, probabilmente sono in minoranza su questo tema e tu sei libero di ignorare queste critiche.

I programmatori esperti potrebbero trovare fastidioso parte del materiale introduttivo. Inoltre, le osservazioni improvvise (e errate) degli autori che equiparano il codice monolitico con il codice spaghetti e l'affermazione che tutto il codice di programmazione orientata agli oggetti (OOP) è, per definizione, mal progettato (così come l'insinuazione sciocca che il semplice passaggio a OOP si trasforma male codice progettato in codice ben progettato) non aiuta.

Il cd

Ho trovato il CD del libro utile e realizzato in modo professionale. File con nomi appropriati e una pagina HTML introduttiva aiutano a navigare nel CD. Il CD contiene anche il libro in formato PDF, che può essere utile per la ricerca.

Infine, gli autori fanno uso dello spazio extra del CD includendo strumenti utili, compreso lo strumento di compilazione Ant 1.4.1, l'IDE Java Forte 3.0, il server EJB JBoss 2.4.4 e altro ancora. Certo, puoi scaricarli singolarmente, ma questo è un bel tocco.

Il sitoweb

Sebbene il libro includa un sito Web, non serve a molto perché tutto ciò di cui hai bisogno è sul CD.

Per riassumere