Programmering

Så mange J2EE bøger, så lidt tid

Når det kommer til J2EE (Java 2 Platform, Enterprise Edition), kender du ikke en bakke af Enterprise JavaBeans (EJB'er). Bare rolig, du finder masser af læsestof, der giver dig en hånd. Faktisk kan du finde for meget! Jeg er her for at hjælpe dig med at indsnævre valgene til en enkelt bog, du kan bære fra boghandlen uden at få brok.

J2EE er en mangfoldig samling af serversides teknologier, der tilsammen danner grundlaget for stærke virksomhedsapplikationer. Jeg keder dig ikke med endnu en J2EE oversigt; chancerne er, at du allerede har læst en eller flere. Derudover vil en af ​​de fire J2EE-bøger, jeg gennemgår her, give dig et sådant overblik.

I denne artikel gennemgår jeg følgende fire J2EE bøger:

  • CodeNotes for J2EE: EJB, JDBC, JSP og Servlets, Robert McGovern og Stuart Charlton, redigeret af Gregory Brill (Random House, 2002; ISBN: 0812991907)
  • Java til internettet med Servlets, JSP og EJB, Budi Kurniawan (New Riders Publishing, 2002; ISBN: 073571195X)
  • Professionel Java Server Programming, J2EE 1.3 Edition, Cedric Beust et al. (Wrox Press, 2001; ISBN: 1861005377)
  • Sams Teach Yourself J2EE på 21 dage, Martin Bond, Dan Haywood, Debbie Law, Andy Longshaw og Peter Roxburgh (Sams, 2002; ISBN: 0672323842)

Ud over hver bogs fortjeneste dykker jeg også ind i deres bonusressourcer såsom websteder eller cd'er. Endelig opsummerer jeg mine sammenligninger og giver dig et endeligt svar på, hvad der er bedst.

Når jeg læser en boganmeldelse, især en komparativ boganmeldelse, vil jeg have utvetydige svar. Til denne anmeldelse besvarer jeg så spørgsmålet "På min fire-dages backpacking-tur i Emigrant Wilderness i næste uge, hvilken bog vil jeg medbringe?"

Et overblik over J2EE-bøger
 CodeNotes for J2EE: EJB, JDBC, JSP og ServletsJava til internettet med Servlets, JSP og EJBProfessionel Java Server-programmering, J2EE 1.3-udgaveSams Teach Yourself J2EE på 21 dage
Pris (US $)9.959.994.999.99
sider2229531,2481,094
Vægt9,25 oz.3 lbs., 5 oz.4 lbs., 1 oz.4 lbs., 1,5 oz.
IndeksGrundlæggendegodtgodtgodt
OrdlisteIngenIngenIngenJa
CD ROMIngenJa - grundlæggendeIngenJa godt
Forfattere31135
J2EE-version dækket1.2.11.3*1.31.3

* Ikke udtrykkeligt angivet; Jeg udledte dette fra det faktum, at han dækker Servlet 2.3, JSP 1.2 og EJB 2.0.

CodeNotes for J2EE: EJB, JDBC, JSP og Servlets

På 222 sider, CodeNotes for J2EE: EJB, JDBC, JSP og Servlets kører betydeligt kortere end sine brødre (eller troede du, det var en skrivefejl?). CodeNotes-serien stræber efter at undervise i ethvert teknisk emne på færre end 200 sider - et prisværdigt koncept.

Hjemmesiden

Mens jeg foretrak CodeNotes for J2EE: EJB, JDBC, JSP og Servlets fra starten blev jeg skamfuld for at lære, hvordan skriveteamet opnåede noget af det glatte: De henvender med jævne mellemrum forskellige emner til CodeNotes-webstedet (bogen inkluderer ikke en cd).

Jeg betragter det som noget snyd, men i praksis fandt jeg det ikke så smertefuldt. Desuden kunne jeg diskriminere lidt mere om, hvad jeg havde brug for at læse. Når jeg læser en bog, læser jeg normalt unødvendige dele, medmindre de er det virkelig lang og klart irrelevant. I dette tilfælde, hvis en bestemt reference ikke er relevant, gider jeg ikke læse den på hjemmesiden.

Desværre, da jeg ikke ville slå et emne op på CodeNotes-webstedet, fandt jeg webstedet langsomt og upålideligt. De sidste adskillige gange, jeg forsøgte at få adgang til det, modtog jeg meddelelsen "Kunne ikke oprette forbindelse til JRun Server" - ikke en stimulerende anvendelse af J2EE-teknologier. Lad os give dem fordelen ved tvivlen og kridt det op til et hardwareproblem; forhåbentlig når du læser dette, er webstedet igen online.

Bogen

Med hensyn til selve bogen bruger forfatterne ironisk nok for meget tid (eller for mange sider, som det var) på emner, der bedst henvises til hjemmesiden. Især det indledende JDBC (Java Database Connectivity) -materiale virker helt unødvendigt, da mange andre bøger dækker JDBC alene.

Ligeledes kunne den grundlæggende servlet og JSP (JavaServer Pages) -dækning skaleres tilbage (eller flyttes til webstedet) i en bog af denne type. At være en tynd bog (en god ting), skal den skimme hurtigt over de J2EE-aspekter, der er godt dækket af litteraturen. Mit gæt er, at enhver, der påbegynder seriøst J2EE-arbejde sandsynligvis allerede har en rigelig boghylde, herunder bøger om Java selv, Swing, JDBC, servlets, SQL og JavaScript, blandt andre.

CodeNotes for J2EE: EJB, JDBC, JSP og Servlets har et sparsomt indeks, og indholdsfortegnelsens vage overskrifter - såsom "Pæne tricks" og "Kernekoncepter" - hjalp mig ikke med at finde specifikke emner. Hvis jeg ikke vidste med sikkerhed, at bogen dækkede et bestemt emne, ville jeg have antaget, at bogen ikke dækkede den og gav op.

CodeNotes for J2EE: EJB, JDBC, JSP og Servlets 's lille størrelse viser sig praktisk at lære på farten, læse en side eller to, mens du venter hos tandlægen eller mens du nipper til et dobbelt skud, ikke-pisk, fedtfri mokka Valencia på den lokale kaffebar. Bogens største problem: den er simpelthen ikke opdateret med J2EE 1.3. Bogen dækker J2EE 1.2.1, men er (endnu) ikke opdateret. For eksempel nævner bogen meddelelsesdrevne bønner som en kommende funktion, men forklarer ikke yderligere.

At opsummere

På trods af al min greb kunne jeg godt lide CodeNotes for J2EE, Generelt sagt. Jeg kan godt lide en bog, der lynlåser gennem materialet og ikke blander på eller gentager punkter, der er kommet tidligere. Jeg ville faktisk ønske, at flere udgivere ville favorisere denne stil. Så CodeNotes folk, hold op med at spilde tid på at skrive. Net-materiale og opdater din J2EE-bog!

Java til internettet med Servlets, JSP og EJB

jeg fandt Java til internettet med Servlets, JSP og EJB en generelt klar, for det meste velskrevet tekst, men det er ikke uden lejlighedsvis litterær hikke.

Budi Kurniawan tager en pragmatisk tilgang til at løse et par specifikke problemer, såsom programmerbar fildownloading (fildownloading med godkendelse) og filupload, en online e-bog og et simpelt eksempel på indkøbskurv. Nogle af disse eksempler virker dog lidt ru på kanterne. For eksempel virker "XML-baseret e-bog" -eksemplet lidt overbevisende. Mens Kurniawan hæver e-bogens fordele i forhold til papirbaserede bøger, afviser han sit argument ved ikke at have offentliggjort noget materiale i e-bogformatet. Undersøgelsen af ​​e-bogsprojektet afslører årsagerne: han designede det således, at hvert emne er en separat HTML-fil, og indholdstræet er en XML-fil. At styre en bog i den form ville være et absolut mareridt. På trods af det repræsenterer e-bogen et udgangspunkt, der kunne raffineres til noget mere håndterbart (venstre naturligvis som en øvelse for læseren).

JavaScript-afbrydelsen

Af en eller anden grund bruger Kurniawan mere end 100 sider på at diskutere JavaScript; dobbelt forvirrende, fordi hans JavaScript-viden synes begrænset, og hans eksempler er forfærdelige. Han fremsætter åbenlyst falske påstande om JavaScript-funktioner - "Når du arbejder med objekter i JavaScript, er array-objektet dybest set dit eneste valg" (s. 621) - og bruger en dårlig programmeringsstil. Han hævder også, at JavaScript skal bruges til browseruafhængighed (s. 485), men at det er i konflikt med adskillige hele kapitler om svagheder ved JavaScript-kodning ("Kontroller, om JavaScript er aktiveret", "Håndtering af JavaScript-uvidende browsere," "Håndtering af forskellige Versioner af JavaScript, "og så videre), for ikke at nævne virkeligheden. Med rette eller forkert kaster det en lang, mørk skygge over bogens troværdighed.

Java til internettet med Servlets, JSP og EJB inkluderer 76 sider med J2EE-referencemateriale - en delmængde af Javadocs, der leveres gratis med J2EE - som jeg betragter som spild af træer (den slags der vokser i skoven, ikke den slags lavet med objekt-desorienteret JavaScript). Hvem slår API-opkald op i en bog? Javadocs er hurtigere og mere tilbøjelige til at være opdaterede. Lidt fedtsugning på JavaScript og referencematerialet plus en skalering af reams af out.println ("

"); linjer i nogle servleteksempler ville reducere denne bog med mere end 20 procent.

CD'en

Java til internettet med Servlets, JSP og EJB inkluderer en CD, hvis tyndt befolkede kodeeksempler helt sikkert ville være bedre placeret på et websted. Måske øger cd'en bogens opfattede værdi, hvilket giver den en lille fordel i forhold til cd-mindre bøger på boghandelhylden? CD'en indeholder Kurniawans filupload og download bønner, men han undlader ikke at medtage deres Javadocs.

Mærkeligt nok ligger cd'ens kodelister i kapitel-sektion. Txt-navngivne tekstfiler, som du bliver nødt til at omdøbe for at være til enhver brug. For eksempel skal du kopiere og omdøbe det første kodeeksempel med navnet 01-01.txt, til TestingServlet.java inden du kunne bruge det.

Hjemmesider

Hverken New Riders-webstedet eller BrainySoftware-webstedet indeholder oplysninger, der ikke findes i bogen eller cd'en.

At opsummere

Måske føler forlag det nødvendigt at have en tyk bog på hylden til et formidabelt emne som J2EE. Jeg tror, ​​at JavaScript-kapitlerne rentabelt kunne erstattes af en simpel henvisning til enhver JavaScript-specifik bog. Med min rygsæk, der allerede vejer mere end 40 kg., Ser alle disse sider, der ikke er J2EE, ret tunge ud.

Professionel Java Server-programmering

Når jeg går ind i denne gennemgang, må jeg indrømme min oprindelige bias mod banden af ​​tretten Professionel Java Server-programmering. Jeg troede, at så mange kokke ville producere en spredt og uorganiseret menu. Jeg er imidlertid glad for at kunne rapportere, at min bias viste sig at være forkert. Måske egner et stort og forskelligt emne som J2EE sig til båndskrivning? Professionel Java Server-programmering både bredt og dybt dækker J2EE (ikke overraskende, da det har flest sider og mindste print af de fire, jeg har gennemgået).

Professionel Java Server-programmering dækker grundigt JNDI (Java Naming and Directory Interface), forskellige aspekter af servlets, JSP og tagbiblioteker, JavaMail, de forskellige EJB-typer, JMS (Java Message Service), J2EE Connector Architecture (JCA), Webtjenester og implementering.

På undersiden skal jeg nævne bogens to fysiske mangler: For det første med mange attraktive bogomslag, der tilbydes af udgivere som Manning, New Riders og O'Reilly & Associates, ville du tro, at Wrox Press kunne producere et omslag mere interessant end en collage på 13 nørder. Hvad tænkte de på? På en lidt mindre tunge-i-kind note resulterede bogens binding af lav kvalitet i sider, der løsnede sig og fladrede ud (og nej, dette var ikke fordi jeg forsøgte at rive dækslet af!).

Hjemmesiden

Mens Professionel Java Server-programmering inkluderer ikke en cd, dens websted indeholder kildekode, der kan downloades, og en heldigvis kort errata-liste. Jeg havde nogle problemer med at finde bogens websted (du kan bruge det praktiske link nedenfor). Bogen i sig selv henviser til Wrox Press-hjemmesiden; når du er der, vil søgning efter ISBN 1861005377 spare dig for mest besvær.

At opsummere

Professionel Java Server-programmering dækker grundigt J2EE. Du finder det en god desktop-reference og en solid J2EE introduktion. Hvis du er flittig nok til at læse den fra omslag til omslag, vil du sandsynligvis være i det et stykke tid (faktisk skal du skynde dig, hvis du vil afslutte den, før J2EE 1.4 er færdig!), Men når du er færdig, skal du vil helt sikkert have bygget et solidt J2EE fundament.

Sams Teach Yourself J2EE på 21 dage

Den heftige Sams Teach Yourself J2EE på 21 dage krydser også stort J2EE-område. Synes godt om Professionel Java Server-programmering, det dækker alle de fremtrædende J2EE-punkter samt designmønstre og refactoring.

Men fra starten fandt jeg forfatterens skrivestil irriterende. Ordvalg som "brug" (den tre stavelsesversion af "brug") og allestedsnærværende overbelastning af ordet "mod" for at betyde "til", "med" eller "for" ("... bruger en forbindelsesfabrik registreret mod standard JNDI-navnet ... "(s. 406)) irriterede mig virkelig efter et stykke tid.

Bogens beskrivelse af navngivning og katalogtjenester inkluderede (opfundet?) En omvendt blandet metafor: Først sidestillede forfatterne en telefonbog til en navngivningstjeneste, derefter sidestillede de gule sider med en bibliotekstjeneste (fordi gule sider giver dig mulighed for at søge på yderligere attributter, ikke bare et navn). Efterfølgende siger teksten, at en telefonbog kaldes et bibliotek, fordi det faktisk er en katalogtjeneste (så hvad er de gule sider nu?) Og slutter med dette underholdende resumé: "Telefonkatalogtjenesten giver dig mulighed for at slå op på en person eller virksomhedens telefonbog med deres navn som nøgle. " (s.83) Hmm. Jeg kan kun gætte på, at redaktørerne var så forvirrede, at de lod denne være alene. Mens sådanne ting raser mod min følsomhed, er jeg sandsynligvis i mindretal om dette emne, og du er fri til at ignorere denne kritik.

Erfarne programmører kan finde irriterende på noget af introduktionsmaterialet. Endvidere bemærker forfatterens direkte (og forkerte) bemærkninger, der svarer til monolitisk kode med spaghetti-kode, og påstanden om, at al ikke-objektorienteret programmeringskode (OOP) pr. Definition er dårligt designet (såvel som den dumme insinuering, der simpelthen skifter til OOP transformerer dårligt designet kode til veldesignet kode) hjælper ikke.

CD'en

Jeg fandt bogens cd nyttig og professionelt udført. Passende navngivne filer og en indledende HTML-side hjælper dig med at navigere på cd'en. CD'en indeholder også bogen i PDF-format, som kan være praktisk til søgning.

Endelig bruger forfatterne CD'ens ekstra plads ved at inkludere nyttige værktøjer, herunder Ant 1.4.1 build-værktøjet, Forte 3.0 Java IDE, JBoss 2.4.4 EJB-serveren og mere. Sikker på, du kunne downloade dem individuelt, men dette er et godt strejf.

Hjemmesiden

Mens bogen indeholder et websted, tjener den ikke meget formål, da alt hvad du har brug for er på cd'en.

At opsummere