Begitu banyak buku J2EE, begitu sedikit masa

Ketika datang ke J2EE (Java 2 Platform, Enterprise Edition), Anda tidak akan mengetahui bukit Enterprise JavaBeans (EJBs). Jangan risau, anda akan mendapat banyak bahan bacaan untuk membantu anda. Sebenarnya, anda mungkin terlalu banyak! Saya di sini untuk membantu anda mempersempit pilihan ke satu buku yang boleh anda bawa dari kedai buku tanpa mendapat hernia.

J2EE adalah koleksi pelbagai teknologi sisi pelayan yang bersama-sama membentuk asas aplikasi perusahaan yang kuat. Saya tidak akan membosankan anda dengan gambaran keseluruhan J2EE yang lain; kemungkinan anda sudah membaca satu atau lebih. Selain itu, salah satu daripada empat buku J2EE yang saya kaji di sini akan memberikan gambaran keseluruhan seperti itu.

Dalam artikel ini, saya mengulas empat buku J2EE berikut:

  • Nota Kod untuk J2EE: EJB, JDBC, JSP, dan Servlets, Robert McGovern dan Stuart Charlton, disunting oleh Gregory Brill (Random House, 2002; ISBN: 0812991907)
  • Java untuk Web dengan Servlets, JSP, dan EJB, Budi Kurniawan (New Riders Publishing, 2002; ISBN: 073571195X)
  • Pengaturcaraan Pelayan Java Profesional, Edisi J2EE 1.3, Cedric Beust et al. (Wrox Press, 2001; ISBN: 1861005377)
  • Sams Teach Yourself J2EE dalam 21 Hari, Martin Bond, Dan Haywood, Debbie Law, Andy Longshaw, dan Peter Roxburgh (Sams, 2002; ISBN: 0672323842)

Di luar kelebihan setiap buku, saya juga menyelidiki sumber bonus mereka seperti Laman Web atau CD. Akhirnya, saya meringkaskan perbandingan saya dan memberi anda jawapan pasti mengenai mana yang terbaik.

Semasa saya membaca ulasan buku, terutamanya ulasan buku perbandingan, saya mahukan jawapan yang jelas. Oleh itu, untuk ulasan ini, saya menjawab soalan, "Dalam perjalanan ransel empat hari saya di Emigrant Wilderness minggu depan, buku mana yang akan saya bawa?"

Buku J2EE sepintas lalu
  Nota Kod untuk J2EE: EJB, JDBC, JSP, dan Servlets Java untuk Web dengan Servlets, JSP, dan EJB Pengaturcaraan Pelayan Java Profesional, Edisi J2EE 1.3 Sams Ajar Diri Anda J2EE dalam 21 Hari
Harga (US $) 9.95 9.99 4.99 9.99
Halaman 222 953 1,248 1,094
Berat 9.25 oz. 3 lbs., 5 oz. 4 lbs., 1 oz. 4 lbs., 1.5 oz.
Indeks Asas Baik Baik Baik
Glosari Tidak Tidak Tidak Ya
CD-ROM Tidak Ya - asas Tidak Ya β€” bagus
Pengarang 3 1 13 5
Versi J2EE dilindungi 1.2.1 1.3 * 1.3 1.3

* Tidak dinyatakan secara eksplisit; Saya menyimpulkan ini dari kenyataan bahawa dia merangkumi Servlet 2.3, JSP 1.2, dan EJB 2.0.

Nota Kod untuk J2EE: EJB, JDBC, JSP, dan Servlets

Pada 222 halaman, CodeNotes untuk J2EE: EJB, JDBC, JSP, dan Servlets berjalan jauh lebih pendek daripada saudara-saudaranya (atau adakah anda fikir itu adalah kesalahan ketik?). Siri CodeNotes berusaha untuk mengajar subjek teknikal dalam kurang dari 200 halaman - konsep yang terpuji.

Laman Web

Walaupun saya menyukai CodeNotes untuk J2EE: EJB, JDBC, JSP, dan Servlets sejak awal, saya kecewa untuk mengetahui bagaimana pasukan penulisan mencapai beberapa kelancaran: Mereka secara berkala menurunkan pelbagai subjek ke Laman Web CodeNotes (buku ini tidak termasuk CD).

Saya menganggap itu agak menipu, tetapi dalam praktiknya saya tidak menyakitkan. Lebih-lebih lagi, saya dapat membezakan sedikit mengenai apa yang perlu saya baca. Biasanya apabila saya membaca buku, saya membaca bahagian-bahagian yang tidak perlu, kecuali mereka yang benar-benar panjang dan jelas tidak relevan. Dalam kes ini, jika rujukan tertentu tidak berkaitan, saya tidak akan bersusah payah membacanya di Laman Web.

Malangnya, semasa saya ingin mencari subjek di Laman Web CodeNotes, saya mendapati laman web ini lambat dan tidak boleh dipercayai. Beberapa kali terakhir saya mencuba untuk mengaksesnya, saya menerima mesej "Tidak dapat menyambung ke JRun Server" - bukan aplikasi teknologi J2EE yang merangsang. Mari kita beri mereka keraguan dan beri masalah kepada masalah perkakasan; semoga anda membaca ini, laman web ini kembali dalam talian.

Buku

Mengenai buku itu sendiri, ironinya, penulis menghabiskan terlalu banyak masa (atau terlalu banyak halaman, sebagaimana adanya) pada subjek yang paling sesuai diturunkan ke Laman Web. Khususnya, bahan pengenalan JDBC (Java Database Connectivity) nampaknya sama sekali tidak perlu, kerana banyak buku lain merangkumi JDBC sahaja.

Begitu juga, liputan servlet asas dan JSP (JavaServer Pages) dapat dikurangkan kembali (atau dipindahkan ke Laman Web) dalam buku jenis ini. Sebagai sebuah buku yang tipis (perkara yang baik), ia harus cepat membaca aspek J2EE yang diliputi dalam kesusasteraan. Sangkaan saya adalah bahawa sesiapa yang memulakan kerja J2EE yang serius mungkin sudah memiliki rak buku yang berlimpah, termasuk buku di Java itu sendiri, Swing, JDBC, servlet, SQL, dan JavaScript, antara lain.

CodeNotes untuk J2EE: EJB, JDBC, JSP, dan Servlets mempunyai indeks yang jarang, dan tajuk kandungan yang tidak jelas - seperti "Trik Rapi" dan "Konsep Teras" - tidak membantu saya mencari topik tertentu. Sekiranya saya tidak tahu pasti buku itu merangkumi topik tertentu, saya akan menganggap buku itu tidak menutupnya dan menyerah.

CodeNotes untuk J2EE: EJB, JDBC, JSP, dan saiz kecil Servlets terbukti berguna untuk belajar di mana sahaja, membaca satu atau dua halaman sambil menunggu di doktor gigi atau sambil menghirup pukulan berganda, tanpa cambuk, nonfat mocha Valencia di kedai kopi tempatan. Masalah terbesar buku: ia tidak terkini dengan J2EE 1.3. Buku ini merangkumi J2EE 1.2.1, tetapi belum dikemas kini. Sebagai contoh, buku ini menyebutkan kacang-kacangan berdasarkan pesanan sebagai ciri yang akan datang , tetapi tidak menjelaskan lebih lanjut.

Ringkasnya

Walaupun begitu, saya suka CodeNotes untuk J2EE , secara umum. Saya suka buku yang melengkapkan bahan dan tidak mengaburkan atau mengulangi perkara yang dibuat sebelumnya. Memang, saya berharap lebih banyak penerbit menyukai gaya ini. Oleh itu, orang CodeNotes, sila berhenti membuang masa untuk menulis. Bahan bersih dan kemas kini buku J2EE anda!

Java untuk Web dengan Servlets, JSP, dan EJB

Saya mendapati Java untuk Web dengan Servlets, JSP, dan EJB adalah teks yang biasanya jelas, kebanyakan ditulis dengan baik, tetapi bukan tanpa gangguan sastera sesekali.

Budi Kurniawan mengambil pendekatan pragmatik untuk menyelesaikan beberapa masalah khusus, seperti memuat turun fail yang dapat diprogramkan (memuat turun fail dengan pengesahan) dan memuat naik fail, e-buku dalam talian, dan contoh keranjang belanja sederhana. Walau bagaimanapun, beberapa contoh ini kelihatan agak kasar. Contohnya, contoh "E-Book Berasaskan XML," nampaknya agak tidak meyakinkan. Walaupun Kurniawan memuji kelebihan e-book daripada buku berasaskan kertas, dia menolak hujahnya dengan tidak menerbitkan bahan dalam format e-book. Memeriksa projek e-book mengungkapkan alasannya: dia merancang sedemikian rupa sehingga setiap topik adalah fail HTML yang terpisah dan pohon kandungannya adalah fail XML. Menguruskan buku dalam bentuk itu akan menjadi mimpi buruk. Walaupun begitu, e-book mewakili titik permulaan yang dapat diperhalusi menjadi sesuatu yang lebih terkawal (kiri,secara semula jadi, sebagai latihan untuk pembaca).

Masalah JavaScript

Untuk sebab tertentu, Kurniawan menghabiskan lebih dari 100 halaman untuk membincangkan JavaScript; dua kali membingungkan kerana pengetahuan JavaScriptnya agak terhad dan teladannya amat mengerikan. Dia membuat pernyataan palsu tentang fitur JavaScript - "Ketika Anda bekerja dengan objek dalam JavaScript, objek array pada dasarnya adalah satu-satunya pilihan anda" (hlm. 621) β€”dan menggunakan gaya pengaturcaraan yang buruk. Dia juga mendakwa bahawa JavaScript harus digunakan untuk kebebasan penyemak imbas (hlm. 485), tetapi itu bertentangan dengan beberapa bab mengenai penyelewengan pengekodan JavaScript ("Memeriksa Sama ada JavaScript Diaktifkan," "Menangani Penyemak Imbas JavaScript-Tidak Sedar," "Menangani Berbeza Versi JavaScript, "dan sebagainya), belum lagi kenyataan. Betul atau tidak, itu memberikan bayangan gelap yang panjang atas kredibiliti buku.

Java untuk Web dengan Servlets, JSP, dan EJB menyertakan 76 halaman bahan rujukan J2EE β€” subset dari Javadocs yang disertakan dengan J2EE β€” yang saya anggap sebagai sisa pokok (jenis yang tumbuh di hutan, bukan jenis yang dibuat dengan JavaScript yang disorientasikan objek). Siapa yang mencari panggilan API dalam buku? Javadocs lebih cepat dan cenderung terkini. Sedikit liposuction pada JavaScript dan bahan rujukan, ditambah skala belakang rimout.println("

"); garis dalam beberapa contoh servlet akan menurunkan buku ini lebih daripada 20 peratus.

CD

Java untuk Web dengan Servlets, JSP, dan EJB menyertakan CD yang sampel kodnya jarang dihuni pasti akan disiarkan lebih baik di Laman Web. Mungkin CD meningkatkan nilai yang dirasakan buku, memberikan sedikit kelebihan berbanding buku tanpa CD di rak kedai buku? CD itu mengandungi kacang muat naik dan muat turun fail Kurniawan, tetapi dia gagal memasukkan Javadocs mereka.

Anehnya, senarai kod CD terdapat dalam file teks bernama bab-section.txt yang harus anda namakan semula agar tidak berguna. Sebagai contoh, anda akan perlu untuk menyalin dan menamakan semula contoh kod yang pertama, yang dinamakan 01-01.txt, untuk TestingServlet.javasebelum anda boleh menggunakannya.

Laman web

Baik laman New Riders ataupun laman BrainySoftware menyertakan maklumat yang juga tidak terdapat dalam buku atau CD.

Ringkasnya

Mungkin penerbit merasa perlu memiliki buku tebal di rak untuk subjek yang hebat seperti J2EE. Saya fikir bab-bab JavaScript dapat diganti dengan keuntungan dengan sebutan mudah untuk buku khusus JavaScript. Dengan beg galas saya yang mempunyai berat lebih dari 40 paun., Semua halaman yang bukan J2EE kelihatan cukup berat.

Pengaturcaraan Pelayan Java Profesional

Mengikut kajian ini, saya mesti mengakui berat sebelah awal saya terhadap Pengaturcaraan Pelayan Java Profesional tiga kumpulan . Saya fikir banyak tukang masak akan menghasilkan menu yang tersebar dan tidak teratur. Saya dengan senang hati melaporkan bahawa bias saya terbukti salah. Mungkin subjek yang besar dan pelbagai seperti J2EE sesuai untuk menulis geng? Pengaturcaraan Pelayan Java Profesional secara luas dan mendalam merangkumi J2EE (tidak menghairankan, kerana ia mempunyai halaman paling banyak dan cetakan terkecil dari empat yang saya kaji).

Pengaturcaraan Pelayan Java Profesional secara menyeluruh merangkumi JNDI (Java Naming and Directory Interface), pelbagai aspek servlet, perpustakaan JSP dan tag, JavaMail, berbagai jenis EJB, JMS (Java Message Service), J2EE Connector Architecture (JCA), perkhidmatan Web, dan penyebaran.

Di sisi bawah, saya mesti menyebutkan dua kekurangan fizikal buku: Pertama, dengan banyak sampul buku menarik yang ditawarkan oleh penerbit seperti Manning, New Riders, dan O'Reilly & Associates, anda fikir Wrox Press dapat menghasilkan sampul yang lebih menarik daripada kolaj 13 kutu buku. Apa yang mereka fikirkan? Selain itu, dengan catatan lidah-di-pipi yang sedikit kurang, pengikatan berkualiti rendah buku itu mengakibatkan halaman-halaman menjadi longgar dan berkibar (dan tidak, ini bukan kerana saya cuba merobek penutup!).

Laman Web

Walaupun Pengaturcaraan Pelayan Java Profesional tidak menyertakan CD, Laman Webnya merangkumi kod sumber yang boleh dimuat turun dan senarai kesalahan yang pendek. Saya menghadapi masalah mencari laman web buku (anda boleh menggunakan pautan berguna di bawah). Buku itu sendiri merujuk anda ke laman utama Wrox Press; sesampai di sana, carian dengan ISBN 1861005377 akan menjimatkan masalah anda.

Ringkasnya

Pengaturcaraan Pelayan Java Profesional merangkumi J2EE secara menyeluruh. Anda akan mendapat rujukan desktop yang baik dan pengenalan J2EE yang mantap. Sekiranya anda cukup rajin membacanya dari awal hingga akhir, anda mungkin akan menggunakannya sebentar (sebenarnya anda lebih baik terburu-buru jika anda mahu menyelesaikannya sebelum J2EE 1.4 dimuktamadkan!), Tetapi pada saat anda selesai, anda sudah tentu akan membina asas J2EE yang kukuh.

Sams Ajar Diri Anda J2EE dalam 21 Hari

Yang besar Sams Teach Yourself J2EE di 21 Days juga merentasi wilayah J2EE luas. Seperti Pengaturcaraan Pelayan Java Profesional , ia merangkumi semua titik J2EE yang menonjol, serta corak reka bentuk dan pemfaktoran semula.

Namun, sejak awal lagi, saya mendapati gaya penulisan penulis tidak menyenangkan. Pemilihan kata seperti "utilize" (versi tiga suku kata "penggunaan") dan kelebihan kata di mana-mana "melawan" untuk bermaksud "ke", "dengan," atau "untuk" ("... menggunakan kilang sambungan yang didaftarkan terhadap nama JNDI lalai ... "(ms 406)) benar-benar mengganggu saya setelah beberapa ketika.

Penerangan buku Penamaan dan Perkhidmatan Direktori termasuk (dicipta?) Metafora campuran terbalik: Pertama penulis menyamakan buku telefon dengan perkhidmatan penamaan, kemudian mereka menyamakan halaman kuning dengan perkhidmatan direktori (kerana halaman kuning membolehkan anda mencari atribut tambahan, bukan sekadar nama). Selanjutnya, teks tersebut mengatakan bahawa buku telefon disebut sebagai direktori kerana itu sebenarnya adalah perkhidmatan direktori (jadi apa halaman kuning sekarang?) Dan selesai dengan ringkasan yang menggembirakan ini: "Perkhidmatan direktori telefon membolehkan anda mencari seseorang atau buku telefon syarikat yang menggunakan nama mereka sebagai kunci. " (ms 83) Hmm. Saya hanya dapat mengagak bahawa penyuntingnya begitu bingung, mereka membiarkan ini sahaja. Walaupun perkara-perkara seperti itu bertentangan dengan kepekaan saya, saya mungkin minoriti dalam isu ini dan anda bebas untuk mengabaikan kritikan ini.

Pengaturcara berpengalaman mungkin menjengkelkan sebilangan bahan pengantar. Selanjutnya, ucapan penulis (dan tidak betul) yang menyamakan kod monolitik dengan kod spaghetti dan penegasan bahawa semua kod pengaturcaraan bukan objektif (OOP) adalah, menurut definisi, tidak dirancang dengan baik (serta sindiran bodoh yang hanya beralih ke OOP mengubah dengan buruk kod yang direka menjadi kod yang dirancang dengan baik) tidak membantu.

CD

Saya dapati CD buku itu berguna dan dilakukan secara profesional. Fail yang diberi nama dengan tepat dan halaman HTML pengantar membantu anda menavigasi CD. CD ini juga mengandungi buku dalam format PDF, yang dapat berguna untuk tujuan pencarian.

Akhirnya, penulis memanfaatkan ruang tambahan CD dengan memasukkan alat yang berguna, termasuk alat binaan Ant 1.4.1, Forte 3.0 Java IDE, pelayan JBoss 2.4.4 EJB, dan banyak lagi. Pasti, anda boleh memuat turunnya secara individu, tetapi ini adalah sentuhan yang bagus.

Laman Web

Walaupun buku ini merangkumi Laman Web, buku ini tidak berfungsi kerana semua yang anda perlukan ada dalam CD.

Ringkasnya