Image

Imagejaq wrote in Imagejava_dev

"Better, Faster, Lighter Java"

I've just been reading "Better, Faster, Lighter Java".

This book asks some serious questions about the state of enterprise Java development today. They suggest that heavyweight frameworks, containers and processes lead to extra unnecessary work just to fit into them. They are particularly critical of EJB, in that it requires a lot of extra files for any given service, and meanwhile ties your classes into it, making them unusable outside the container - and I know from my experience that EJB is frequently used as nothing more than a glorified persistence layer.

To avoid these issues, they describe a set of principles to bear in mind when designing and developing software, and when choosing external tools to use. As examples there are chapters describing the use of Hibernate, a transparent persistence framework, and Spring, a general 'inversion of control' configuration framework. (We're using Spring on my current project, and it encourages building simple bean classes).

The book concludes with a look at the future. It suggests that use and backing for EJB is waning, and that use of open source tools is growing. They give a simple argument for why this should happen - that 'design by committee' tools like EJB are pushed out based on little 'real world' usage, whereas the open source tools that gain widespread acceptance are precisely those that prove to be useful and usable.

Well worth reading, in my opinion. It certainly made me question some accepted ideas behind the kind of projects I've worked on.