Προγραμματισμός

Τόσα πολλά βιβλία J2EE, τόσο λίγος χρόνος

Όσον αφορά το J2EE (Java 2 Platform, Enterprise Edition), δεν γνωρίζετε έναν λόφο Enterprise JavaBeans (EJBs). Μην ανησυχείτε, θα βρείτε άφθονο υλικό ανάγνωσης για να σας βοηθήσουμε. Στην πραγματικότητα, μπορεί να βρείτε πάρα πολλά! Είμαι εδώ για να σας βοηθήσω να περιορίσετε τις επιλογές σε ένα βιβλίο που μπορείτε να μεταφέρετε από το βιβλιοπωλείο χωρίς να έχετε κήλη.

Το J2EE είναι μια πολυάριθμη συλλογή τεχνολογιών από διακομιστή που μαζί αποτελούν τη βάση ισχυρών εταιρικών εφαρμογών. Δεν θα σας κουράσω με μια ακόμη επισκόπηση του J2EE. πιθανότητες έχετε ήδη διαβάσει ένα ή περισσότερα. Επιπλέον, οποιοδήποτε από τα τέσσερα βιβλία J2EE που εξετάζω εδώ θα σας δώσει μια τέτοια επισκόπηση.

Σε αυτό το άρθρο, εξετάζω τα ακόλουθα τέσσερα βιβλία J2EE:

  • CodeNotes για J2EE: EJB, JDBC, JSP και Servlets, Robert McGovern και Stuart Charlton, επιμέλεια Gregory Brill (Random House, 2002; ISBN: 0812991907)
  • Java για τον Ιστό με Servlets, JSP και EJB, Budi Kurniawan (New Riders Publishing, 2002; ISBN: 073571195X)
  • Επαγγελματικός προγραμματισμός διακομιστή Java, έκδοση J2EE 1.3, Οι Cedric Beust et al. (Wrox Press, 2001; ISBN: 1861005377)
  • Ο Sams διδάσκει τον εαυτό σας J2EE σε 21 ημέρες, Martin Bond, Dan Haywood, Debbie Law, Andy Longshaw και Peter Roxburgh (Sams, 2002; ISBN: 0672323842)

Πέρα από τα πλεονεκτήματα κάθε βιβλίου, εξετάζω επίσης τους πόρους μπόνους τους, όπως Ιστοσελίδες ή CD. Τέλος, συνοψίζω τις συγκρίσεις μου και σας δίνω μια οριστική απάντηση σχετικά με το ποια είναι η καλύτερη.

Όταν διαβάζω μια κριτική βιβλίου, ειδικά μια συγκριτική κριτική βιβλίου, θέλω σαφείς απαντήσεις. Για αυτήν την κριτική, λοιπόν, απαντώ στην ερώτηση, "Στο τετραήμερο ταξίδι μου στο σακίδιο πλάτης στο Emigrant Wilderness την επόμενη εβδομάδα, ποιο βιβλίο θα φέρω;"

Βιβλία J2EE με μια ματιά
 CodeNotes για J2EE: EJB, JDBC, JSP και ServletsJava για το Διαδίκτυο με Servlets, JSP και EJBΕπαγγελματικός προγραμματισμός διακομιστή Java, έκδοση J2EE 1.3Ο Sams διδάσκει τον εαυτό σας J2EE σε 21 ημέρες
Τιμή (US $)9.959.994.999.99
Σελίδες2229531,2481,094
Βάρος9,25 ουγκιές3 λίβρες, 5 ουγκιές.4 λίβρες, 1 ουγκιές.4 λίβρες, 1,5 ουγκιές.
ΔείκτηςΒασικόςΚαλόςΚαλόςΚαλός
ΓλωσσάριοΟχιΟχιΟχιΝαί
ΜΟΝΑΔΑ ΟΠΤΙΚΟΥ ΔΙΣΚΟΥΟχιΝαι - βασικόΟχιΝαι καλά
Συγγραφείς31135
Καλύπτεται η έκδοση J2EE1.2.11.3*1.31.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.

Ομοίως, η βασική κάλυψη servlet και JSP (JavaServer Pages) θα μπορούσε να κλιμακωθεί (ή να μετακινηθεί στον Ιστότοπο) σε ένα βιβλίο αυτού του τύπου. Όντας ένα λεπτό βιβλίο (καλό πράγμα), θα πρέπει να ξεπεράσει γρήγορα αυτές τις πτυχές J2EE που καλύπτονται καλά στη βιβλιογραφία. Υποθέτω ότι οποιοσδήποτε ξεκινά σοβαρή δουλειά J2EE πιθανότατα διαθέτει ήδη ένα μεγάλο ράφι, συμπεριλαμβανομένων βιβλίων για την ίδια την Java, Swing, JDBC, servlets, SQL και JavaScript, μεταξύ άλλων.

CodeNotes για J2EE: EJB, JDBC, JSP και Servlets έχει ένα αραιό ευρετήριο και τις ασαφείς επικεφαλίδες του περιεχομένου - όπως "Neat Tricks" και "Core Concepts" - δεν με βοήθησαν να βρω συγκεκριμένα θέματα. Αν δεν ήξερα με βεβαιότητα ότι το βιβλίο κάλυπτε ένα συγκεκριμένο θέμα, θα υποθέσω ότι το βιβλίο δεν το κάλυψε και το εγκατέλειψα.

Code Σημειώσεις για J2EE: EJB, JDBC, JSP και Servlets 'Το μικρό μέγεθος αποδεικνύεται βολικό για να μαθαίνετε εν κινήσει, να διαβάζετε μια σελίδα ή δύο, ενώ περιμένετε στον οδοντίατρο ή πίνοντας διπλή βολή, χωρίς μαστίγιο, μη λιπαρά mocha Valencia στην τοπική καφετέρια. Το μεγαλύτερο πρόβλημα του βιβλίου: απλά δεν είναι ενημερωμένο με το J2EE 1.3. Το βιβλίο καλύπτει το J2EE 1.2.1, αλλά δεν έχει (ακόμη) ενημερωθεί. Για παράδειγμα, το βιβλίο αναφέρει τα φασόλια που βασίζονται σε μηνύματα ως α ερχόμενη δυνατότητα, αλλά δεν εξηγεί περαιτέρω.

Εν κατακλείδι

Παρ 'όλο που μου απασχολούσε, μου άρεσε CodeNotes για J2EE, γενικά μιλώντας. Μου αρέσει ένα βιβλίο που περνάει μέσα από το υλικό και δεν αμβλύνει ούτε επαναλαμβάνει σημεία που έκαναν νωρίτερα. Πράγματι, εύχομαι περισσότεροι εκδότες να προτιμούν αυτό το στυλ. Λοιπόν, CodeNotes, παρακαλώ σταματήστε να χάνετε χρόνο να γράψετε. Καθαρό υλικό και ενημερώστε το βιβλίο σας J2EE!

Java για το Διαδίκτυο με Servlets, JSP και EJB

βρήκα Java για τον Ιστό με Servlets, JSP και EJB ένα γενικά διαυγές, κυρίως καλογραμμένο κείμενο, αλλά δεν είναι χωρίς την περιστασιακή λογοτεχνική αναστάτωση.

Ο Budi Kurniawan ακολουθεί μια ρεαλιστική προσέγγιση για την επίλυση ορισμένων συγκεκριμένων προβλημάτων, όπως η προγραμματιζόμενη λήψη αρχείων (λήψη αρχείων με έλεγχο ταυτότητας) και η μεταφόρτωση αρχείων, ένα ηλεκτρονικό βιβλίο και ένα απλό παράδειγμα καλαθιού αγορών. Ωστόσο, μερικά από αυτά τα παραδείγματα φαίνονται λίγο τραχιά. Για παράδειγμα, το παράδειγμα "Ηλεκτρονικό βιβλίο που βασίζεται σε XML" φαίνεται λίγο πειστικό. Ενώ ο Kurniawan εξαιρεί τα πλεονεκτήματα του ηλεκτρονικού βιβλίου σε σχέση με τα βιβλία που βασίζονται σε χαρτί, αρνείται το επιχείρημά του επειδή δεν έχει δημοσιεύσει κανένα υλικό στη μορφή του ηλεκτρονικού βιβλίου. Η εξέταση του έργου e-book αποκαλύπτει τους λόγους: το σχεδίασε έτσι ώστε κάθε θέμα να είναι ένα ξεχωριστό αρχείο HTML και το δέντρο περιεχομένων να είναι ένα αρχείο XML. Η διαχείριση ενός βιβλίου με αυτή τη μορφή θα ήταν ένας απόλυτος εφιάλτης. Παρ 'όλα αυτά, το ηλεκτρονικό βιβλίο αντιπροσωπεύει ένα σημείο εκκίνησης που θα μπορούσε να βελτιωθεί σε κάτι πιο διαχειρίσιμο (αριστερά, φυσικά, ως άσκηση για τον αναγνώστη).

Η καταστροφή JavaScript

Για κάποιο λόγο, ο Kurniawan ξοδεύει περισσότερες από 100 σελίδες συζητώντας τη JavaScript. διπλασιασμός γιατί οι γνώσεις του στο JavaScript φαίνεται περιορισμένες και τα παραδείγματα του είναι τρομακτικά. Κάνει αυθόρμητα ψευδείς ισχυρισμούς σχετικά με τις λειτουργίες JavaScript - "Όταν εργάζεστε με αντικείμενα σε JavaScript, το αντικείμενο του πίνακα είναι βασικά η μόνη σας επιλογή" (σελ. 621) - και χρησιμοποιεί ένα κακό στυλ προγραμματισμού. Ισχυρίζεται επίσης ότι το JavaScript πρέπει να χρησιμοποιηθεί για ανεξαρτησία του προγράμματος περιήγησης (σελ. 485), αλλά αυτό έρχεται σε διένεξη με πολλά ολόκληρα κεφάλαια σχετικά με τις παραμορφώσεις της κωδικοποίησης JavaScript ("Έλεγχος εάν είναι ενεργοποιημένη η JavaScript", "Χειρισμός προγραμμάτων περιήγησης JavaScript χωρίς γνώση", "Διαφορετικός χειρισμός Εκδόσεις JavaScript, "και ούτω καθεξής), για να μην αναφέρουμε την πραγματικότητα. Σωστά ή λάθος, που ρίχνει μια μακριά, σκοτεινή σκιά στην αξιοπιστία του βιβλίου.

Java για τον Ιστό με Servlets, JSP και EJB περιλαμβάνει 76 σελίδες υλικού αναφοράς J2EE - ένα υποσύνολο των Javadocs που διατίθεται δωρεάν με το J2EE - το οποίο θεωρώ σπατάλη δέντρων (το είδος που μεγαλώνει στο δάσος, όχι το είδος που κατασκευάζεται με JavaScript που δεν έχει αντικείμενο). Ποιος αναζητά τις κλήσεις API σε ένα βιβλίο; Τα Javadocs είναι πιο γρήγορα και πιο πιθανό να είναι ενημερωμένα. Λίγο λιποαναρρόφηση στο JavaScript και το υλικό αναφοράς, καθώς και κλιμάκωση πίσω από τις ακτίνες του out.println ("

"); γραμμές σε ορισμένα παραδείγματα servlet θα μειώσουν αυτό το βιβλίο κατά περισσότερο από 20 τοις εκατό.

Το CD

Java για τον Ιστό με Servlets, JSP και EJB περιλαμβάνει ένα CD του οποίου τα αραιοκατοικημένα δείγματα κώδικα σίγουρα θα δημοσιεύονταν καλύτερα σε έναν ιστότοπο. Ίσως το CD αυξάνει την αντιληπτή αξία του βιβλίου, δίνοντάς του λίγο πλεονέκτημα έναντι των βιβλίων χωρίς CD στο ράφι του βιβλιοπωλείου; Το CD περιέχει φασόλια μεταφόρτωσης και λήψης αρχείων του Kurniawan, αλλά δεν συμπεριλαμβάνει τα Javadocs τους.

Περιέργως, οι καταχωρίσεις κώδικα του CD βρίσκονται σε αρχεία κειμένου με τίτλο κεφάλαιο-section.txt τα οποία θα πρέπει να μετονομάσετε ώστε να μην είναι χρήσιμα. Για παράδειγμα, θα πρέπει να αντιγράψετε και να μετονομάσετε το πρώτο παράδειγμα κώδικα, που ονομάζεται 01-01.txt, προς την TestingServlet.java πριν μπορέσετε να το χρησιμοποιήσετε.

Ιστοσελίδες

Ούτε ο ιστότοπος New Riders ούτε ο ιστότοπος BrainySoftware περιλαμβάνουν πληροφορίες που δεν βρίσκονται επίσης στο βιβλίο ή στο CD.

Εν κατακλείδι

Ίσως οι εκδότες θεωρούν απαραίτητο να έχουν ένα παχύ βιβλίο στο ράφι για ένα τρομερό θέμα όπως το J2EE. Νομίζω ότι τα κεφάλαια JavaScript θα μπορούσαν να αντικατασταθούν κερδοφόρα από μια απλή αναφορά σε οποιοδήποτε βιβλίο ειδικά για JavaScript. Με το σακίδιο μου να ζυγίζει ήδη πάνω από 40 λίβρες, όλες αυτές οι σελίδες εκτός J2EE φαίνονται αρκετά βαρύ.

Επαγγελματικός προγραμματισμός διακομιστή Java

Πηγαίνοντας σε αυτήν την κριτική, πρέπει να παραδεχτώ την αρχική μου προκατάληψη κατά της συμμορίας των δεκατριών Επαγγελματικός προγραμματισμός διακομιστή Java. Νόμιζα ότι τόσα πολλά μάγειρα θα παράγουν ένα διάσπαρτο και αποδιοργανωμένο μενού. Είμαι στην ευχάριστη θέση να αναφέρω, ωστόσο, ότι η προκατάληψή μου αποδείχθηκε λανθασμένη. Ίσως ένα μεγάλο και διαφορετικό θέμα όπως το J2EE προσφέρεται για συμμορία; Επαγγελματικός προγραμματισμός διακομιστή Java τόσο καλύπτει ευρέως όσο και βαθιά το J2EE (δεν προκαλεί έκπληξη, δεδομένου ότι έχει τις περισσότερες σελίδες και τη μικρότερη εκτύπωση από τα τέσσερα που εξέτασα).

Επαγγελματικός προγραμματισμός διακομιστή Java καλύπτει διεξοδικά το JNDI (Java Naming and Directory Interface), διάφορες πτυχές servlets, JSP και tag library, JavaMail, τους διάφορους τύπους EJB, JMS (Java Message Service), J2EE Connector Architecture (JCA), υπηρεσίες Web και ανάπτυξη.

Στην κάτω πλευρά, πρέπει να αναφέρω τις δύο φυσικές αδυναμίες του βιβλίου: Πρώτον, με πολλά ελκυστικά εξώφυλλα βιβλίων που προσφέρονται από εκδότες όπως οι Manning, New Riders και O'Reilly & Associates, νομίζετε ότι η Wrox Press θα μπορούσε να δημιουργήσει ένα εξώφυλλο πιο ενδιαφέρον από ένα κολάζ 13 σπασίκλων. Τι σκεφτόταν; Επιπλέον, σε μια ελαφρώς λιγότερη νότα στο μάγουλο, η δέσμευση χαμηλής ποιότητας του βιβλίου είχε ως αποτέλεσμα οι σελίδες να χαλαρώσουν και να κυματίζουν (και όχι, αυτό ήταν δεν γιατί προσπάθησα να σκίσω το κάλυμμα!).

Η ιστοσελίδα

Ενώ Επαγγελματικός προγραμματισμός διακομιστή Java δεν περιλαμβάνει CD, ο ιστότοπός του περιλαμβάνει πηγαίο κώδικα με δυνατότητα λήψης και μια ευτυχώς σύντομη λίστα errata. Παρουσιάστηκε πρόβλημα με τον εντοπισμό του ιστότοπου του βιβλίου (μπορείτε να χρησιμοποιήσετε τον εύχρηστο σύνδεσμο παρακάτω). Το ίδιο το βιβλίο σας παραπέμπει στην αρχική σελίδα του Wrox Press. Μόλις φτάσετε εκεί, η αναζήτηση με ISBN 1861005377 θα σας εξοικονομήσει το μεγαλύτερο πρόβλημα.

Εν κατακλείδι

Επαγγελματικός προγραμματισμός διακομιστή Java καλύπτει διεξοδικά το J2EE. Θα βρείτε μια καλή αναφορά για επιτραπέζιους υπολογιστές και μια σταθερή εισαγωγή J2EE. Εάν είστε αρκετά επιμελής για να το διαβάσετε από εξώφυλλο σε εξώφυλλο, πιθανότατα θα είστε σε αυτό για λίγο (στην πραγματικότητα θα πρέπει να βιαστείτε αν θέλετε να το τελειώσετε πριν ολοκληρωθεί το J2EE 1.4!), Αλλά μέχρι να τελειώσετε, σίγουρα θα έχει χτίσει μια σταθερή βάση J2EE.

Ο Sams διδάσκει τον εαυτό σας J2EE σε 21 ημέρες

Το βαρύ Ο Sams διδάσκει τον εαυτό σας J2EE σε 21 ημέρες διασχίζει επίσης τεράστια περιοχή J2EE. Σαν Επαγγελματικός προγραμματισμός διακομιστή Java, καλύπτει όλα τα εμφανή σημεία J2EE, καθώς και μοτίβα σχεδίασης και αναδιαμόρφωση.

Ωστόσο, από την αρχή, βρήκα ενοχλητικό το στυλ γραφής των συγγραφέων. Επιλογή λέξεων όπως "utilize" (η έκδοση τριών συλλαβών του "use") και η πανταχού παρούσα υπερφόρτωση της λέξης "εναντίον" σημαίνει "προς", "με" ή "για" ("... χρησιμοποιεί ένα εργοστάσιο σύνδεσης που έχει καταχωριστεί κατά το προεπιλεγμένο όνομα JNDI ... "(σελ. 406)) με ενόχλησε πραγματικά μετά από λίγο.

Η περιγραφή της ονομασίας και των υπηρεσιών καταλόγου του βιβλίου περιελάμβανε (εφευρέθηκε;) μια αντίστροφη ανάμεικτη μεταφορά: Πρώτα οι συγγραφείς εξισώνουν έναν τηλεφωνικό κατάλογο με μια υπηρεσία ονομάτων, και στη συνέχεια εξισώνουν τις κίτρινες σελίδες με μια υπηρεσία καταλόγου (επειδή οι κίτρινες σελίδες σας επιτρέπουν να αναζητήσετε πρόσθετα χαρακτηριστικά, όχι μόνο ένα όνομα). Στη συνέχεια, το κείμενο λέει ότι ένας τηλεφωνικός κατάλογος ονομάζεται κατάλογος επειδή είναι στην πραγματικότητα μια υπηρεσία καταλόγου (οπότε ποιες είναι οι κίτρινες σελίδες τώρα;) και τελειώνει με αυτήν τη διασκεδαστική περίληψη: "Η υπηρεσία τηλεφωνικού καταλόγου σάς επιτρέπει να αναζητήσετε ένα άτομο ή τηλεφωνικός κατάλογος της εταιρείας χρησιμοποιώντας το όνομά τους ως κλειδί. " (σελ. 83) Χμμ. Μπορώ μόνο να μαντέψω ότι οι συντάκτες ήταν τόσο μπερδεμένοι, το άφησαν αυτό μόνο. Ενώ τέτοια πράγματα έρχονται σε αντίθεση με τις ευαισθησίες μου, είμαι πιθανώς στη μειοψηφία σε αυτό το ζήτημα και είστε ελεύθεροι να αγνοήσετε αυτές τις επικρίσεις.

Οι έμπειροι προγραμματιστές μπορεί να θεωρήσουν ενοχλητικό μέρος του εισαγωγικού υλικού. Επιπλέον, οι έκτακτες (και λανθασμένες) παρατηρήσεις των συγγραφέων που εξισώνουν τον μονολιθικό κώδικα με τον κώδικα σπαγγέτι και τον ισχυρισμό ότι όλοι οι κώδικες προγραμματισμού (OOP) που δεν προσανατολίζονται σε αντικείμενα είναι, εξ ορισμού, κακοσχεδιασμένοι (καθώς και η ανόητη έννοιες που απλώς μεταβαίνει σε OOP μετασχηματίζει άσχημα σχεδιασμένος κώδικας σε καλά σχεδιασμένο κώδικα) δεν βοηθά.

Το CD

Βρήκα το CD του βιβλίου χρήσιμο και επαγγελματικό. Τα κατάλληλα ονόματα αρχείων και μια εισαγωγική σελίδα HTML σας βοηθούν να πλοηγηθείτε στο CD. Το CD περιέχει επίσης το βιβλίο σε μορφή PDF, το οποίο μπορεί να είναι βολικό για αναζήτηση.

Τέλος, οι συγγραφείς χρησιμοποιούν τον επιπλέον χώρο του CD συμπεριλαμβάνοντας χρήσιμα εργαλεία, όπως το Ant 1.4.1 build tool, το Forte 3.0 Java IDE, το JBoss 2.4.4 EJB server και πολλά άλλα. Σίγουρα, θα μπορούσατε να τα κατεβάσετε ξεχωριστά, αλλά αυτό είναι ένα ωραίο άγγιγμα.

Η ιστοσελίδα

Ενώ το βιβλίο περιλαμβάνει έναν ιστότοπο, δεν εξυπηρετεί μεγάλο σκοπό, καθώς όλα όσα χρειάζεστε είναι στο CD.

Εν κατακλείδι

$config[zx-auto] not found$config[zx-overlay] not found