Showing posts with label books. Show all posts
Showing posts with label books. Show all posts

May 3, 2012

Java 7 New Features CookBook - Review


Java 7 New Features CookBook by Richard M. Reese and Jennifer L. Reese is a good read but could have been better. As the name suggests this is a cook book containing recipes describing new Java 7 features.
Java SE 7 (or Java 1.7) was released in July 2011.
Lots of features have been introduced in Java 7 and the authors have covered most of them.

The target audience of this book are experienced Java developers who are familiar with writing programs in Java 5 and beyond and not for newbies to Java. Most of the recipes revolve around I/O i.e. File, Paths , Streams concurrency - which means a previous knowledge of these concepts are essential.

What's good:
The book contains 11 chapters:
covering core language improvements like using String in switch, using the diamond operator for constructor type inference etc,  to various recipes related to Java I/O, to GUI improvements, event handling to JDBC enhancements.
Each recipe follows a standard structure describing how to grasp the concept thru code. It is not necessary to read from start to end, the reader can jump into any recipe and read it.
Also most recipes includes caveats and gotchas which are immensely helpful for the developer.

What could have been improved:
Code examples are very basic. The authors could have taken better interesting examples to illustrate the concepts.
The code blocks are not reader friendly. The font, the formatting etc is sub-standard. This is the crux of the recipe and developers hate to see their code badly formatted.
Examples could have been less repetitive. Seems like the authors were in a hurry to release the book :)

What's missing:
A little bit history on Java versions. This helps readers to refresh the memory and sets some context.
Something on RIA Deployment toolkit, Custom classloaders, Garbage collector etc

Conclusion:
Easy to read and understand. Worth picking up.  Highly recommended for someone who wants most of the new features in Java 7 in one place with code examples.

Thanks for reading..


March 30, 2012

Java 7 New Features Cookbook

Java has come a long way - from JDK 1.0 in 1996 to Java 7 in 2011. It has been almost a year "Dolphin" has been out with lots of new features.  Oracle hosted a series of events last year showing the power of Java 7 as this was a significant milestone.



Our friends at Packt has come with an good cookbook "Java 7 New Features Cookbook" having 100s of new features explored.  I just got hold a copy of this. Would be reviewing this and posting a blurb on this blog.


If you are curious just like me  - then head over to their site - http://www.packtpub.com/java-7-new-features-cookbook/book and explore the Table of Contents. It looks interesting.

September 30, 2011

Play Framework CookBook - Book Review - worth buying

It has been a while I got hold of new book on Play framework from Packt publications - Play Framework Cookbook. I just completed reading this book.
Play online documentation is itself awesome - explaining the basics and leaving the readers to explore complex features on these basics. This book complements the online documentation and digs deep on some of the great features of the framework - providing practical techniques with source code.
The book is written by Alexander Reelsen. 


Pre-requisites:
This book is intended for experienced Play users -  not the beginners. By experienced I mean, users who understand the basics, high level architecture of Play and who have worked on few examples. There is very less introductory stuff. 

Review:
The book covers the Play 1.2 version, whereas the current online version available online is 1.2.3. One of the technical review member is none other - Guillaume Bort - the creator of the Play framework. There is no question of technicalities and correctness of the code examples.
There are 7 chapters with an Appendix covering about 60 recipes.

The most useful chapters that I found where:
1. Leveraging Modules - This chapter covers dependency injection with Spring and Guice. There is a recipe of using MongoDB module which I found useful. The recipes are useful and gives a good insight into how modules can provide powerful extensions to Play’s core functionality.
2. Introduction to Writing Modules - This is another useful chapter - which is not easily found on the web. When the project size increases, it is best to split into modules and manage the complexity. This covers Play plugins, understanding events, managing module dependencies.
3. Running in Production - This is an very important chapter which will be most useful for any project team. Almost all the recipes presented in this chapter like - Test automation,  SSL for certain controllers, running jobs in distributed environment are very useful and clearly explained.

Criticisms
1.  The code examples span multiple pages and not very well formatted.  This is nothing to do with the content but with more of formatting and presenting. Just look at any O'reilly book, their editors do an awesome job
2. Few recipes lack good explanation - it could have been improved - For e.g. - "Understanding events" in the "Introduction to Writing Modules"
3. The reader can make out that English is not the first language of the Author. This is some room for improvement in this area.

Conclusion: It is definitely a very useful book for teams who have already started using the framework. As I said earlier - it complements the online documentation. It is a good buy - worth the investment.

Disclosure: I was provided with an eBook copy of the Play Framework Cookbook by Packt Publishing for the purposes of this review.

August 16, 2011

Review - Java EE 6 Development with NetBeans 7

Finally I finished reading the Java EE 6 Development with NetBeans 7 book, reading some chapters in detail and skimming other chapters. Lots of screenshots and pictures make it easy to grasp the content and there are plenty of them in this book.

Netbeans 7 is a very sophisticated IDE supporting many languages. Java EE 6 is latest set of standards which aims at developer productivity plus having all the great things from different well established frameworks. Netbeans 7 + Java EE 6 makes a lethal combination.

This is an excellent book for folks who want to use Netbeans 7 IDE to do enterprise Java development work. The book is written keeping in mind developers who are new or less experienced with Netbeans 7 IDE.

This book contains 11 chapters.

The first chapter is targeted for novice Netbeans users, downloading and installing on different platforms. Experienced users can safely skip this section."NetBeans tips for effective development" is an useful section in this chapter; both for beginners as well as experienced Netbeans user.

Creating jsps, servlets, jspf are a breeze in Netbeans 7 using the GUI tools. The basics of this are covered in the second chapter. A good section on securing webapps, with different types of authentication supported for webapps is neatly covered.

Enhancing JSP Functionality with JSTL and Custom Tags chapter is an easy read. This chapter covers the basic of JSTL with sample examples. It also covers the CRUD operations using SQL JSTL tags (important for throwaway prototypes and quick development of DB apps).

Developing Web Applications using JavaServer Faces 2.0 chapter covers details on creating JSF projects primarily focussing on using Netbeans 7 IDE capabilities.
JSF concepts are covered only what is required from a Netbeans 7 usage point of view. Advanced concepts on JSF are not covered such as Lifecycle, phases etc. A couple of pages on this would have helped the reader to understand the big picture especially the beginners.

Then next chapter is devoted to the intro on PrimeFaces component library; which comes pre-bundled with Netbeans 7. Several features and examples are covered.

Interacting with Databases through the Java Persistence API is a very important chapter in the book. It covers the basics of JPA API and shows how Netbeans 7 can help to speed up the development of JPA applications. A complete example is explained covering from connecting to database to Entity relationships, named queries, validation and generating entity model from the existing database schema.

Implementing the Business Tier with Session Beans chapter covers basic intro to Session beans and very basic example on AOP (advanced conceptual features are left out).
But, all the features of Netbeans 7 IDE to create Session beans, Interceptors and deploying EJBs to Glassfish server are covered in detail.

The CDI chapter covers basics on creating CDI aware apps using Netbeans 7 GUI. Netbeans GUI makes it simple to create the CDI using wizards. All the features supported by the IDE for CDI capabilities are covered by the author with an practical example. Easy read.

Messaging with JMS and Message Driven Beans chapter starts with a basic intro on JMS. Netbeans 7 IDE generates all the boilerplate code for creating, sending and receiving JMS messages. An queue example with Glassfish server is highlighted in this chapter. For creating, testing and deploying JMS enabled apps, you never have to leave the Netbeans 7 IDE.

SOAP Web Services with JAX-WS and RESTful Web Services with JAX-RS are the last two chapters covering the two different flavors of Webservices supported by Java EE 6.
Netbeans 7 allows to modify web services via a graphical interface. All the boilerplate is neatly generated by Netbeans 7 IDE. These chapters include a simple examples on creating a Webservice, as well a simple client to consume the webservice. Author also shows how easy it is to expose existing Session EJB using Netbeans 7 as an Webservice. Although a more sophisticated example of using attachments and webservices security would have been very useful for the reader.

Couple of appendices at the end - Appendix A on using the Netbeans 7 debugger and Appendix B on using the Netbeans 7 profiler cover other important features supported by Netbeans IDE.

Targeted Audience:

The book is kind of basic tutorial on Java EE 6 using almost all the features supported by Netbeans 7 IDE. Naturally this book is for beginners (as well as intermediate developers) who want to switch to Netbeans and understand how to develop the new features of Java EE 6.  Advanced concepts of Java EE 6 are not covered.

What missing (My opinion):

The author should have taken one example at the start of the book and chapter-wise added new features with increasing complexity to this example; somewhat mimicking real world project. This way,  it would have been a little easier for the reader to grasp. Again this is my view. But the author has chosen the right example for each chapter to bring out all the features of the Netbeans 7.

The other missing part - A bit of unit testing using Netbeans 7 IDE (probably an Appendix) and couple of Ajax examples. These are kind of important in this agile era.

Conclusion

Overall it is a good book and would make an beginner to an adept Netbeans 7 user.

Thanks Packt for providing an opportunity to review the book.

August 13, 2011

Java EE 6 Development with NetBeans 7

Couple of days back I got hold of the new book - Java EE 6 Development with NetBeans 7 published by Packt Publications written by David R. Heffelfinger.

I'm super excited to read this book. It covers latest Java EE 6 stack - JSF 2.0, EJB 3.1, JPA 2.0, CDI 1.0 and Servlets 3.0 etc.


Will soon be posting a short review of the same.
Until next time..