Home :: Books :: Computers & Internet  

Arts & Photography
Audio CDs
Audiocassettes
Biographies & Memoirs
Business & Investing
Children's Books
Christianity
Comics & Graphic Novels
Computers & Internet

Cooking, Food & Wine
Entertainment
Gay & Lesbian
Health, Mind & Body
History
Home & Garden
Horror
Literature & Fiction
Mystery & Thrillers
Nonfiction
Outdoors & Nature
Parenting & Families
Professional & Technical
Reference
Religion & Spirituality
Romance
Science
Science Fiction & Fantasy
Sports
Teens
Travel
Women's Fiction
EJB Design Patterns: Advanced Patterns, Processes, and Idioms

EJB Design Patterns: Advanced Patterns, Processes, and Idioms

List Price: $35.00
Your Price: $23.10
Product Info Reviews

<< 1 2 3 4 >>

Rating: 3 stars
Summary: unfortunate treatment of a relevant and interesting topic
Review: First thing first, I'll come to the review of this book but before that some advice for you... if you are a J2EE architect/developer you'd need to use the contents of this book time and again, but this book is so badly organized and fluffy one can hardly survive the frustration of reading it twice, so make notes the first time you take the pain of going thru this book... following are mine
- the importance of DTOs have come down following EJB2.0 release
- reduce network chattiness, consider following options
-- Session facade: remember not to create a God class, group relevant functions together in each Facade
-- Consider message facade for asynchronous processing of requests where an immediate response is not required
-- consider Command pattern only for prototyping
-- use HashMaps or Value objects for transferring Entity EJB data over indiv get/set methods
-- use LocalHomes for Session Bean to Entity Bean comm
- create a business interface, a superinterface which both the remote and the Bean itself can implement
- strongly recommend RowSet (JDBC 2.0 optional/JDBC 3.0 core) for tabular data transfer
- depending on requirement, strike a balance between Domain Data Objects (Entity EJB data copies) and custom data objects (what the customer wants to see in one shot), remember to make Custom DOs read only
- consider Fast Lane Reader pattern, pretty neat... Consider JDBC for Reading pattern for read-only data
- Dual Persistent Entity Beans, toggle between BMP/CMP EJB by modifying the deployment descriptors
- skip Chapter 4, use 'Service Locator' pattern with caching option for locating and caching EJB homes
- need to generate primary keys, mostly use UUID generation technique discussed in case database's sequences are not enough
- Part 2 of the book is mostly fluff, it discusses everything but 'Best Practices for EJB design and Implementation', which coincidentally is the heading for part 2
- using ANT and jUnit, you call them best practice? No, they are standard practices
- model domain/persistence/services/clients in that order
- in discussing alternatives to Entity EJBs author laudes JDOs too much, I suggest you check out the 'Hibernate' project, looks more intuitive than JDO (to me)
- Chapter 9 (EJB design Strategies, Idioms and Tips) is actually pretty good, probably because this is the only chapter that's not fluffy, thank you Floyd
-- don't use Composite Entity Bean Pattern, good suggestion Floyd
-- field validation on Entity beans? Use (define and implement) get/set-XXXfield methods since you can't implement the get/set-XXX methods
-- prefer scheduled updates to real-time computations
-- Message Beans - use serialized classes to enable type checking
-- call setRollbackOnly and NOT Rollback, when App exceptions occur
-- limit parameters for EJB create, don't pass DTOs
-- don't use XML as a DTO mechanism, good eye-opener for XML fans

Okay, now the review comes...

Many of us J2EE developers and architects alike encounter a large decision tree while architecting/modeling enterprise-class systems with the help of EJBs, it becomes very difficult to weigh all the options available and all the customized treatment of EJBs on different J2EE containers over and above the minimum req or what's provided in SUN's reference implementation, most of us recognize a need for performance improvement in this area and a need to recognize the best practices or patterns to be used to help solve the frequent and recurring problems. For this very reason this book 'could have' been such an invaluable asset to the J2EE community, but alas this should have remained a bulky chapter in Ed Roman's 'Mastering EJB (2nd Edition)' book, the content has been fluffed beyond repair in this book and that's the last thing one needs in a patterns book, keep it short and organized.

The Author has not found a way to organize the pattern contents in a logical manner, due to this most of the chapters look like one loooooong paragraph each, organize. Author defines and talks about patterns and antipatterns in the same tone. The code examples I gather would be helpful for beginners.

All in all, this book contains a lot of content I would not advise people to miss, but the book is not worth buying, download and read it from the website, theServerside.

In addition, I suggest
- J2EE Design patterns: Deepak Alur et al
- Design Patterns: Eric gamma et al... read it only if you are a pattern gung-ho

Rating: 5 stars
Summary: Amazing book for EJB specific patterns and design practices
Review: For those that are just getting a handle on EJB technology and would like to avoid the common pitfalls when design EJB enterprise applications, this book is must read. Knowing the the classes of EJB and how to extend and deploy them is not enough - knowing how they all work in a multi-tiered architecture that advocates maintainability as well as performance in a balanced way is the true challange. This book will provide you will all the knowledge you need when design your J2EE applications.

For those that already have a handle on J2EE and have used it for some time, this book offers an excellent catalog of design patterns and perhaps you'll learn a few new ones too. The Strategies on the development process when working with EJB are also great for newcomers that would like to know the best practices to avoid making too mistakes with this technology.

Great book and concrats to the author making it compact, easy to read and full of wonderful information from beginning to end. Excellent!

Rating: 3 stars
Summary: A book to be polished, condensed, extinguished...
Review: Honestly, the book is not a bad book, it presents an interesting yet hard topic, how to design EJB (or in a broader sense, J2EE application) using design patterns. However, this book has a large intersection with Core J2EE Patterns, which not only includes more patterns (on all layers), but also is written in a more clear and comprehensive way.

Except the patterns presented in both books, (Session Facade, Data Transfer Object(DTO), DTO Factory(Assembler), EJBHomeFactory(Service Locator), Business Delegate...) the author introduced,
"EJB Command" pattern, which in practice(IMO), has limited usage in server side enterprise application, since it distributes the business logic to command objects (usually the client) and thus will cause business rules duplication and more importantly, harder to change the rules later since its distribution;

"Generic Attribute Access and Data Transfer Hashmap" pattern, which is nothing but using map to transfer data. This again will suffer in distributed applications, since both clients and server have to agree on map key protocol and it is harder to add/change the keys later;

"Data Access Command" pattern, which derives from both command and data access object(DAO, presented in Core), not only will this pattern suffer the cons of command pattern usage in enterprise distributed application, but also potential complexity in command processing to make sure dead-lock situations, data integrity, and may end up with a lot of small customized command classes.

Even though the author mentioned the cons of these patterns clearly, I think the risk outweighs the benefit in an entry-mid level enterprise application design book which tries to teach designers how make a good design.

A few good things that were missed out by Core J2EE patterns are "Business Interface", "Version Number", "Dual Persistent Entity Bean", "Primary Key Generation". But these can be find somewhere else, particularly, "Version Number" and "Primary Key Generation" are more in the database/tranaction domain than EJB domain.

Chapter6 "From Requirements to Pattern-Driven Design" is supposed to be a case study, but is presented in a vague and not derived way to step through, it also lacks the normal iterative/refactoring design style, if everything is straightforward and in place to make a perfect design decision, then I would think the example would not be real. Though, I do like the author's layering style definition from Presentation, Application, Services, Domain, to Persistence.

Chaper7 is about development, building, testing, deployment process, it is totally irrelevant to the design pattern topic, and too short to be useful, and there are a lot of good books (instead of only one chapter) in the book store.

Chapter8 is about JDO, again, a single chapter would not make readers' day.

Chapter9 is good, it is about idioms, good practices vs. pitfalls in J2EE application design. However, the list is too short and does not provide how to refactor the bad design to good one compared with Core J2EE Patterns.

Overall, there are limited useful contents presented in this book, and I had feeling that a lot of stuff (unrelated) were stuffed in just to fill up the space to make it a decent-sized book. I would recommend Core J2EE Patterns over this one if you are interested in J2EE application using design patterns. Only one of these two books will stand last...

Rating: 4 stars
Summary: good book!
Review: I find this book really interesting and easy to read.

I like the way floyd explains the problem and finishes up with a question on how to solve it. It then introduces the solution to the problem (the pattern itself), as well as an implementation, including disadvantages and advantages. All these in a very clear use of english.

I think this book (along with core J2EE patterns) makes a good combination in your shelf. (Also, don't forget martin fowler's patterns book).

Rating: 4 stars
Summary: Wonderful Book
Review: I found it to be a very good book.I liked the way topics have been covered with so much details and in such a simple language.The language used is pretty simple and straightforward.I wish the book will be a great success soon.

Thanks/Regards
Rais Ahmed

Rating: 5 stars
Summary: One of my favourites...
Review: I have already read a lot of books about best practices regarding
J2EE and EJB development. In my opinion EJB Design Patterns from
Floyd Marinescu is one of the best references for EJB Design Patterns
which covers all important topics about Pattern-Driven EJB development.

Floyd is Principal at "The MIDDLEWARE Company" and one of the founders
of TheServerSide, the reference Portal for the J2EE community.

The book involves standard patterns like the Session Facade and
DTO (Data Transfer Objects) as well as extensions like a pattern
for asynchronous communication (Message Facade) between a client
application and the service layer in the middle tier.

The layered EJB architecture which includes the application, service,
domain, and persistence layer are discussed in detail. Useful hints
for the EJB development process and system design complete the book.
The book is a good choice for EJB developers and enterprise
architects.

One of the big advantages of the book are the chapters "From
requirements to Pattern-Driven Design" and "EJB development with
Jakarta Ant and unit testing with JUnit" which are dealing with
the solution of real world problems.

The chapter about Entity Beans vs. Java Data Objects (JDO) is a
must for every domain developer.

Floyd's book is well written and easy to understand for experienced
developers and architects. The Java source code examples of the book
are well documented and useful, if one desires a complete impression
of EJB development.

To be honest, the book is one of the favourites in my bookshelf and
I consult it whenever possible to learn more about that important
technology.

The book also includes a nice poster that shows the EJB Design
Patterns and an additional text to avoid pit falls. It's nice to
stand in front of this poster and think about that great server
side Java technology.

Rating: 2 stars
Summary: Looks like a copy of Sun's Book
Review: I picked up this book and besides thinking that much of it is strategies, vs patterns, I think much of this is already in Sun's J2EE Patterns book.

Rating: 5 stars
Summary: Easy Implementation
Review: I saw that this book was developed on the author's ServerSide.com site with a lot of input from other developers, and it shows. And Marinescu gives you the code, which made it a lot easier to implement the solutions. Definitely five stars, and thanks!

Rating: 4 stars
Summary: A Nice Book
Review: I think it is a nice book.
Hornestly speaking, the patterns in this books are hardly original. For those who read Core J2EE Patterns, you may found this book like another query for the same set of the data.
What makes this book a good book is:
1)For each patterns, it honestly list pros and cons, which may or may not have been in your mind. It helps you to considerate the problem more objectively and more deeply.
2)Not like some fundamentalists, the author also honestly analyze the EJB technologies with a balanced view. Give you the pros and cons, leave you the space to make a decision.
3)It does provide a pretty long list of patterns you may want to know with EJB development. And like what the author said, many of these ideas are not limited to EJB, so if you can understand the terminologies in EJB's world, it is a good reference book for system designers.

What could have make you dissapointed with this book is:
1)Like I said, patterns in this book are hardly original. You can find most of them from Core J2EE paterns or Matering EJB 2nd and this book published months after them. The author also honestly list links after each patterns. If you have read those books first, you may feel a little dissappointed.
2)Like many other EJB GURUs, the author did not give readers informations on the problems people will face when they apply the EJB technologies to a complicated business system. The hands on experience the book based seems to come from a online forum ... which originally has only one seesion bean and lately revised to be a couple more as the author mentioned. However, what most EJB developers found in their real world development is that they have to face much more complicated system.
Anyway, like reading many other book. You can learn a lot, but you still have to keep your mind open. The best pratice is not something officially define by this or that company, but the one which solve your problems.

Rating: 5 stars
Summary: A Practical book
Review: I thoroughly enjoyed reading this book, Cover to Cover the author presented very well. It helped me to apply patterns in 3 real world projects.

If you are a J2EE Programmer, then you MUST-HAVE this book. I promise you, this book would save you for years.

Real great work...Thanks Floyd Marinescu.


<< 1 2 3 4 >>

© 2004, ReviewFocus or its affiliates