Толкова много книги за J2EE, толкова малко време

Що се отнася до J2EE (Java 2 Platform, Enterprise Edition), вие не познавате хълм от Enterprise JavaBeans (EJB). Не се притеснявайте, ще намерите много материали за четене, които да ви помогнат. Всъщност може да намерите твърде много! Тук съм, за да ви помогна да стесните избора до една книга, която можете да носите от книжарницата, без да получавате херния.

J2EE е разнообразна колекция от сървърни технологии, която заедно формира основата на мощни корпоративни приложения. Няма да ви отегчавам с поредния преглед на J2EE; шансовете са, че вече сте прочели една или повече. На всичкото отгоре всяка една от четирите книги за J2EE, които преглеждам тук, ще ви даде такъв преглед.

В тази статия преглеждам следните четири книги за J2EE:

  • CodeNotes за J2EE: EJB, JDBC, JSP и Servlets, Robert McGovern и Stuart Charlton, редактирани от Грегъри Брил (Random House, 2002; ISBN: 0812991907)
  • Java за мрежата със сървлети, JSP и EJB, Budi Kurniawan (New Riders Publishing, 2002; ISBN: 073571195X)
  • Професионално програмиране на Java Server, издание J2EE 1.3, Cedric Beust et al. (Wrox Press, 2001; ISBN: 1861005377)
  • Самс се научи на J2EE за 21 дни, Мартин Бонд, Дан Хейууд, Деби Лоу, Анди Лонгшоу и Питър Роксбърг (Самс, 2002; ISBN: 0672323842)

Освен достойнствата на всяка книга, аз също се задълбочавам в техните бонус ресурси като уебсайтове или компактдискове. Накрая обобщавам сравненията си и ви давам окончателен отговор относно това кой е най-добрият.

Когато чета рецензия на книга, особено сравнителна рецензия, искам недвусмислени отговори. Тогава за този преглед отговарям на въпроса „Коя книга ще донеса в четиридневното ми пътуване с раници в Емигрантската пустиня следващата седмица?“

J2EE книги с един поглед
  CodeNotes за J2EE: EJB, JDBC, JSP и Servlets Java за мрежата със сървлети, JSP и EJB Професионално програмиране на Java Server, издание J2EE 1.3 Самс се научи на J2EE за 21 дни
Цена (US $) 9,95 9,99 4.99 9,99
Страници 222 953 1,248 1,094
Тегло 9,25 унции 3 lbs., 5 oz. 4 lbs., 1 унция. 4 lbs., 1,5 унции.
Индекс Основен добре добре добре
Терминологичен речник Не Не Не Да
CD ROM Не Да - основно Не Да добре
Автори 3 1 13 5
Обхваната версия на J2EE 1.2.1 1,3 * 1.3 1.3

* Не е изрично посочено; Това заключих от факта, че той покрива Servlet 2.3, JSP 1.2 и EJB 2.0.

CodeNotes за J2EE: EJB, JDBC, JSP и Servlets

На 222 страници CodeNotes за J2EE: EJB, JDBC, JSP и Servlets работи значително по-кратко от своите събратя (или смятате, че това е печатна грешка?). Серията CodeNotes се стреми да преподава всеки технически предмет на по-малко от 200 страници - похвална концепция.

Уебсайтът

Докато предпочитах CodeNotes за J2EE: EJB, JDBC, JSP и Servlets от самото начало, бях огорчен да науча как писателският екип постигна някои от елегантността: Те периодично връщат различни теми към уебсайта CodeNotes (книгата не включва CD).

Смятам, че това донякъде е измама, но на практика не го намерих толкова болезнено. Нещо повече, бих могъл да дискриминирам малко повече какво трябва да прочета. Обикновено, когато чета книга, чета ненужни части, освен ако не са наистина дълги и очевидно без значение. В този случай, ако конкретна препратка не е уместна, няма да се притесня да я прочета на уебсайта.

За съжаление, когато исках да потърся тема на уебсайта на CodeNotes, намерих сайта бавен и ненадежден. Последните няколко пъти, когато се опитах да осъществя достъп до него, получих съобщение „Не можах да се свържа със сървър JRun“ - не стимулиращо приложение на J2EE технологиите. Нека да им дадем ползата от съмнението и да ги закрепим до хардуерен проблем; надяваме се, че докато прочетете това, сайтът отново е онлайн.

Книгата

Що се отнася до самата книга, по ирония на съдбата, авторите отделят твърде много време (или твърде много страници, като че ли) по теми, най-добре прехвърлени към уебсайта. По-специално, уводният материал за JDBC (Java Database Connectivity) изглежда напълно ненужен, тъй като много други книги обхващат само JDBC.

По същия начин основният сървлет и покритието на JSP (JavaServer Pages) могат да бъдат намалени обратно (или преместени на уебсайта) в книга от този тип. Като тънка книга (хубаво нещо), тя трябва бързо да прегледа тези аспекти на J2EE, добре обхванати в литературата. Предполагам, че всеки, който се захваща със сериозна J2EE работа, вероятно вече притежава богата етажерка, включително книги за самата Java, Swing, JDBC, сървлети, SQL и JavaScript, наред с други.

CodeNotes за J2EE: EJB, JDBC, JSP и Servlets има оскъден индекс и неясните заглавия на съдържанието - като „Чисти трикове“ и „Основни концепции“ - не ми помогнаха да намеря конкретни теми. Ако не знаех със сигурност, че книгата обхваща определена тема, щях да предположа, че книгата не я покрива и да се откажа.

CodeNotes за J2EE: Малкият размер на EJB, JDBC, JSP и Servlets се оказва удобен за учене в движение, четене на страница или две, докато чакате при зъболекаря или докато отпивате двоен изстрел, обезмаслена мока Валенсия в местно кафене. Най-големият проблем на книгата: тя просто не е в крак с J2EE 1.3. Книгата обхваща J2EE 1.2.1, но (все още) не е актуализирана. Например в книгата се споменава задвижвания от съобщения боб като предстояща функция , но не се обяснява допълнително.

Да обобщим

Въпреки цялата ми хватка, харесах CodeNotes за J2EE , най-общо казано. Харесва ми книга, която прекарва ципа през материала и не трепти или повтаря точки, направени по-рано. Всъщност ми се иска повече издатели да подкрепят този стил. Така че, CodeNotes хора, моля, престанете да губите време за писане на .Net материали и актуализирайте вашата J2EE книга!

Java за мрежата със сървлети, JSP и EJB

Намерих Java за мрежата със Servlets, JSP и EJB като цяло ясен, предимно добре написан текст, но не е без случайно литературно хълцане.

Budi Kurniawan използва прагматичен подход към решаването на няколко специфични проблема, като програмируемо изтегляне на файлове (изтегляне на файлове с удостоверяване) и качване на файлове, онлайн електронна книга и прост пример за количка за пазаруване. Някои от тези примери обаче изглеждат малко груби по краищата. Например, пример за „XML-базирана електронна книга“ изглежда малко неубедителен. Докато Kurniawan възхвалява предимствата на електронната книга пред книги на хартиен носител, той опровергава аргумента си, като не е публикувал никакъв материал във формата на електронната книга. Разглеждането на проекта за електронна книга разкрива причините: той го е проектирал така, че всяка тема е отделен HTML файл, а дървото на съдържанието е XML файл. Управлението на книга в такава форма би било абсолютен кошмар. Независимо от това, електронната книга представлява отправна точка, която може да бъде усъвършенствана в нещо по-управляемо (вляво,естествено, като упражнение за читателя).

Провалът на JavaScript

По някаква причина Kurniawan прекарва повече от 100 страници, обсъждайки JavaScript; двойно объркващо, защото познанията му за JavaScript изглеждат ограничени, а примерите му са ужасяващи. Той прави явно неверни твърдения относно функциите на JavaScript - „Когато работите с обекти в JavaScript, обектът масив е основно единственият ви избор“ (стр. 621) - и използва лош стил на програмиране. Той също така твърди, че JavaScript трябва да се използва за независимост на браузъра (стр. 485), но това е в конфликт с няколко цели глави за капризите на JavaScript кодирането („Проверка дали JavaScript е активиран“, „Работа с JavaScript-несъществуващи браузъри“, „Работа с различни Версии на JavaScript "и т.н.), да не говорим за реалността. Правилно или не, това хвърля дълга, тъмна сянка върху достоверността на книгата.

Java за мрежата със сървлети, JSP и EJB включва 76 страници J2EE справочен материал - подмножество на Javadocs, което се предлага безплатно с J2EE - което считам за загуба на дървета (вида, който расте в гората, а не вида с обезориентиран JavaScript). Кой търси API извиквания в книга? Javadocs са по-бързи и е по-вероятно да бъдат актуализирани. Малко липосукция на JavaScript и референтния материал, плюс мащабиране на гърба наout.println("

"); редове в някои примери за сървлети биха намалили тази книга с повече от 20 процента.

CD

Java за мрежата със сървлети, JSP и EJB включва CD, чиито рядко населени кодови проби със сигурност биха били по-добре публикувани на уебсайт. Може би CD-то увеличава възприеманата стойност на книгата, като й дава малко предимство пред книгите без CD на рафта на книжарницата? Компактдискът съдържа файла за качване и изтегляне на файлове на Kurniawan, но той не успява да включи техните Javadocs.

Странното е, че списъците с кодове на компактдиска се намират в текстови файлове с име на chapter-section.txt, които трябва да преименувате, за да са от полза. Например, ще трябва да копирате и преименувате първия пример с код, наречен 01-01.txt, TestingServlet.javaпреди да можете да го използвате.

Уебсайтове

Нито сайтът New Riders, нито сайтът BrainySoftware не съдържа информация, която също не е намерена в книгата или компактдиска.

Да обобщим

Може би издателите смятат, че е необходимо на рафта да има дебела книга за страховита тема като J2EE. Мисля, че главите на JavaScript биха могли да бъдат заменени изгодно с просто позоваване на всяка специфична за JavaScript книга. С моята раница, която вече тежи повече от 40 lbs., Всички тези страници, които не са J2EE, изглеждат доста тежки.

Професионално програмиране на Java Server

Влизайки в този преглед, трябва да призная първоначалното си пристрастие срещу бандата на тринадесетте професионални програмисти на Java Server . Мислех, че толкова много готвачи ще създадат разпръснато и неорганизирано меню. Имам удоволствието да съобщя обаче, че моята пристрастност се оказа погрешна. Може би голяма и разнообразна тема като J2EE се поддава на банда? Професионалното програмиране на Java Server, както широко, така и дълбоко, обхваща J2EE (не е изненадващо, тъй като има най-много страници и най-малък печат от четирите, които разгледах).

Професионалното програмиране на Java Server обхваща изцяло JNDI (Java Naming and Directory Interface), различни аспекти на сървлети, JSP и библиотеки с тагове, JavaMail, различните типове EJB, JMS (Java Message Service), J2EE Connector Architecture (JCA), уеб услуги и разполагане.

От долната страна трябва да спомена двата физически недостатъка на книгата: Първо, с многобройни атрактивни корици на книги, предлагани от издателства като Manning, New Riders и O'Reilly & Associates, бихте си помислили, че Wrox Press може да създаде корица, по-интересна отколкото колаж от 13 глупаци. Какво си мислеха? Освен това, на малко по-малко бележка, нискокачествената подвързия на книгата доведе до разхлабване на страници и пърхане (и не, това не беше, защото се опитах да откъсна корицата!).

Уебсайтът

Докато Професионалното програмиране на Java Server не включва CD, уебсайтът му включва изтегляем изходен код и щастлив кратък списък с грешки. Имах проблеми с намирането на уебсайта на книгата (можете да използвате удобната връзка по-долу). Самата книга ви насочва към началната страница на Wrox Press; веднъж там, търсенето по ISBN 1861005377 ще ви спести най-много проблеми.

Да обобщим

Професионалното програмиране на Java Server обхваща изцяло J2EE. Ще го намерите като добра справка за работния плот и солидно представяне на J2EE. Ако сте достатъчно усърдни, за да го прочетете от корица до корица, вероятно ще сте готови за известно време (всъщност по-добре побързайте, ако искате да го завършите, преди J2EE 1.4 да бъде финализиран!), Но докато приключите, вие със сигурност ще са изградили солидна J2EE основа.

Самс се научи на J2EE за 21 дни

Здравият Сам се научи на J2EE за 21 дни също пресича огромна територия на J2EE. Подобно на професионалното програмиране на Java Server , то обхваща всички важни точки на J2EE, както и дизайнерски модели и рефакторинг.

От самото начало обаче намерих стила на писане на авторите за досаден. Избор на думи като "използвай" (трисричната версия на "използвай") и повсеместно претоварване на думата "против", което означава "до," "с," или "за" ("... използва фабрика за връзка, регистрирана срещу името на JNDI по подразбиране ... "(стр. 406)) наистина ме дразнеше след известно време.

Описанието на имената и услугите за имена на книгата включва (измисли?) Обратна смесена метафора: Първо авторите приравняват телефонен указател на услуга за именуване, след това приравняват жълтите страници на услугата на директориите (защото жълтите страници ви позволяват да търсите в допълнителни атрибути, не само име). Впоследствие текстът казва, че телефонният указател се нарича директория, защото всъщност е услуга за директории (така че какви са жълтите страници сега?) И завършва с това забавно обобщение: „Услугата телефонна директория ви позволява да търсите човек или телефонния указател на компанията, използвайки името им като ключ. " (стр. 83) Хм. Мога само да гадая, че редакторите бяха толкова объркани, че оставиха този сам. Въпреки че подобни неща се отразяват на моята чувствителност, вероятно съм в малцинството по този въпрос и вие можете да игнорирате тези критики.

Опитните програмисти може да сметнат някои от уводните материали. Освен това, нестандартните (и неправилни) забележки на авторите приравняват монолитния код със спагети кода и твърдението, че целият код, който не е обектно ориентиран (OOP), по дефиниция е лошо проектиран (както и глупавата инсинуация, че просто преминаването към OOP се трансформира зле проектиран код в добре проектиран код) не помага.

CD

Намерих компактдиска на книгата за полезен и професионално направен. Подходящо именувани файлове и уводна HTML страница ви помагат да навигирате в компактдиска. Компактдискът съдържа и книгата във формат PDF, която може да бъде удобна за целите на търсенето.

И накрая, авторите се възползват от допълнителното пространство на компактдиска, като включват полезни инструменти, включително инструмента за изграждане Ant 1.4.1, Forte 3.0 Java IDE, сървъра JBoss 2.4.4 EJB и др. Разбира се, можете да ги изтеглите поотделно, но това е хубаво докосване.

Уебсайтът

Въпреки че книгата включва уебсайт, тя не служи много, тъй като всичко, от което се нуждаете, е на компактдиска.

Да обобщим