or
Sign in to turn on 1-Click ordering
Sell Us Your Item
For a $10.97 Gift Card
Trade in
More Buying Choices
Have one to sell? Sell yours here
Tell the Publisher!
I'd like to read this book on Kindle

Don't have a Kindle? Get your Kindle here, or download a FREE Kindle Reading App.
Sorry, this item is not available in
Image not available for
Color:
Image not available

To view this video download Flash Player

 

The Well-Grounded Java Developer: Vital techniques of Java 7 and polyglot programming [Paperback]

Benjamin J Evans , Martijn Verburg
4.6 out of 5 stars  See all reviews (13 customer reviews)

List Price: $49.99
Price: $28.10 & FREE Shipping. Details
You Save: $21.89 (44%)
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o
In Stock.
Ships from and sold by Amazon.com. Gift-wrap available.
Want it Wednesday, May 29? Choose One-Day Shipping at checkout. Details
Shop the new tech.book(store)
New! Introducing the tech.book(store), a hub for Software Developers and Architects, Networking Administrators, TPMs, and other technology professionals to find highly-rated and highly-relevant career resources. Shop books on programming and big data, or read this week's blog posts by authors and thought-leaders in the tech industry. > Shop now

Book Description

July 18, 2012

Summary

The Well-Grounded Java Developer offers a fresh and practical look at new Java 7 features, new JVM languages, and the array of supporting technologies you need for the next generation of Java-based software.

About the Book

The Well-Grounded Java Developer starts with thorough coverage of Java 7 features like try-with-resources and NIO.2. You'll then explore a cross-section of emerging JVM-based languages, including Groovy, Scala, and Clojure. You will find clear examples that are practical and that help you dig into dozens of valuable development techniques showcasing modern approaches to the dev process, concurrency, performance, and much more.

Written for readers familiar with Java. No experience with Java 7 or new JVM languages required.

Purchase of the print book comes with an offer of a free PDF, ePub, and Kindle eBook from Manning. Also available is all code from the book.

What's Inside
  • New Java 7 features
  • Tutorials on Groovy, Scala, and Clojure
  • Discovering multicore processing and concurrency
  • Functional programming with new JVM languages
  • Modern approaches to testing, build, and CI
Table of Contents
    PART 1 DEVELOPING WITH JAVA 7
  1. Introducing Java 7
  2. New I/O
  3. PART 2 VITAL TECHNIQUES
  4. Dependency Injection
  5. Modern concurrency
  6. Class files and bytecode
  7. Understanding performance tuning
  8. PART 3 POLYGLOT PROGRAMMING ON THE JVM
  9. Alternative JVM languages
  10. Groovy: Java's dynamic friend
  11. Scala: powerful and concise
  12. Clojure: safer programming
  13. PART 4 CRAFTING THE POLYGLOT PROJECT
  14. Test-driven development
  15. Build and continuous integration
  16. Rapid web development
  17. Staying well-grounded

Frequently Bought Together

The Well-Grounded Java Developer: Vital techniques of Java 7 and polyglot programming + Effective Java (2nd Edition) + Java Concurrency in Practice
Price for all three: $105.54

Buy the selected items together


Editorial Reviews

About the Author

Ben Evans is the CEO of a Java performance firm and a member of the Java Community Process Executive Committee.

Martijn Verburg is the CTO of a Java performance firm, co-leader of the London JUG, and a popular conference speaker.


Product Details

  • Paperback: 496 pages
  • Publisher: Manning Publications (July 18, 2012)
  • Language: English
  • ISBN-10: 1617290068
  • ISBN-13: 978-1617290060
  • Product Dimensions: 7.4 x 1 x 9.2 inches
  • Shipping Weight: 1.9 pounds (View shipping rates and policies)
  • Average Customer Review: 4.6 out of 5 stars  See all reviews (13 customer reviews)
  • Amazon Best Sellers Rank: #30,579 in Books (See Top 100 in Books)

More About the Author

Discover books, learn about writers, read author blogs, and more.

Customer Reviews

4.6 out of 5 stars
(13)
4.6 out of 5 stars
A lot of authors write books to make a name for themselves. H. Kabutz  |  2 reviewers made a similar statement
Most Helpful Customer Reviews
20 of 22 people found the following review helpful
5.0 out of 5 stars Java 7, TDD, Concurrency, Polyglotism and Beyond July 24, 2012
Format:Paperback
The authors of Well Grounded Java Developer promise the reader a book that will help modernize their knowledge base, brush up on vital techniques, and learn a new language or two. Promise delivered!

The book is split into four parts. First part covers Java 7 with its new features, such as NIO, Project Coin that comes with the diamond operator, string in switch statements and try-with-resources features. With lots of clear examples, written in both Java 6 and 7, the book showcases the new features and what problems they attempt to solve.

While part one covered new language features, part two focuses on universal practices and methodologies vital to any developer regardless of experience. Among the covered topics: TDD, CI, DI and the Java implementation of javax.inject, performance tuning, and modern concurrency.

Part three of the book is for those of us who believe in and/or want know about polyglotism. It provides an easy starting point to a number of languages without neither overwhelming novices, nor boring the experienced. The book has chapters on Scala, Groovy and Clojure. I bought this book a little over a week ago and now halfway through part three but did briefly skim thought the fourth part of the book. In this final part, the focus is on applying everything from previous three parts into creating a new project; it dedicates a whole chapter on TDD highlighting its paramount importance in modern software development. I will update the review with more details after finishing this part.

The best thing about this book is that it will inspire you to take part in the evolution of JVM ecosystem currently underway. After all, a well grounded java developer would :)
Comment | 
Was this review helpful to you?
8 of 11 people found the following review helpful
5.0 out of 5 stars A good model for modern Java August 12, 2012
Format:Paperback
The Well Grounded Java Developer is a welcome addition to the library of this work-a-day Java developer. I think I acquired this title for its promise to introduce features new to Java 7, which it does, but I find much more value than just this. As new concepts and techniques are introduced, the code samples demonstrate not only the new idea, but also the implementation of the various enhancements Java 7 provides. In other words, the code samples in this book look like Java 7 code from top to bottom, rather than Java 6 code with a sore thumb. Throughout the second section, you see code that uses the Path abstraction, multi-catch, underscores in number literals, and the other features that were introduced in Part 1.

Section 2 contains a lot of information that is new to me. As a Java developer incubated in a corporate setting, I have been nurtured to produce code, more than to understand it.

Chapter 3 discusses IoC and DI usefully. I am, just as the authors anticipated, one who probably heard the term Spring before I heard the term Inversion of Control. This chapter makes DI make sense as a design solution with many possible implementations, including Guice 3, the RI for JSR-330.

Chapter 4 discusses concurrency. The authors stress the inevitability of the rising importance of concurrency programming as multicore CPU's become standard. They discuss the advantages of immutability in the context of concurrency, foreshadowing the rise of functional programming styles and languages for the JVM. See for example the Callable interface, which they describe as "the closest that Java 7 gets to having functions as first-class objects." They laud java.util.concurrent, and elucidate Atomic and Locks. They also introduce ConcurrentHashMap, and suggest we always favor it over HashMap. And they present fork/join with "a simple example" that I had to read a half-dozen times to grok. Probably just me.

Chapter 5 discusses Class files and bytecode. It steps through the class loading process. MethodHandles are introduced as an answer to certain shortcomings of the Callable interface. The constant pool was a brand new concept for me, as was javap, the tool to use for examining these constants. There is a section on Bytecode, which is "an intermediate representation of a program - halfway between human readable source code and machine code." This representation takes the form of a list of operation codes ("opcodes") that may take arguments. Each opcode is represented by a single byte, "hence the name bytecode." Opcodes are organized into logical groups by function, such as "Load and Store" and "Arethmetic." Java 7 introduces a new opcode - a first! The new opcode is invokedynamic, which allows deferral of method selection to runtime. This is a JVM thing for dynamic languages; Java-the-language doesn't emit invokedynamic. This is another reminder that the future of the JVM is polyglot, with increasing support for dynamic languages.

Chapter 6 discusses performance tuning. The topic of this sermon is, "You have to measure. You can't tune properly without measuring." It discusses some metrics, such as latency and utilization. It also mentions transforming bytecode as it is loaded in order to attach tuning instrumentation. This chapter doesn't provide a lot of code samples, and I don't know how I individually will apply much of it. It's an interesting read, though. The imperative to utilize caches closest to the CPU is demonstrated visually. There's a section on Garbage Collection, in which Areas of memory (Eden, Survivor, Tenured and PermGen) are defined, as well as the jmap and VisualVM tools for viewing memory contents. Escape analysis is a neat idea, where a method is assessed as a candidate to create its dependencies on the stack, rather than on the heap, if its local reference variables are used only inside the method. The G1 collector is a radical departure from previous collector models. It learns how much collection it can expect to accomplish in a given amount of time (the pause), and plans its workload according to your pause goals of duration and frequency. Finally, Just-in-Time compilation is discussed, with an introduction to compilation strategies. Inlining methods is described as "eliminating the call to the inlined method, and instead placing the code of the called method inside the caller." The compiler uses runtime statistics to determine where to apply this strategy.

I have perused Part 3, and I look forward to reading it and Part 4 thoroughly.

This book is an excellent resource for Java developers who are capable of enthusiasm about programming. The book is of no value to the reader who is new to Java. I would highly recommend the book to a curious colleague who is fundamentally sound and insists on enjoying the next few years creating code for the JVM.
Was this review helpful to you?
5.0 out of 5 stars Good reading for developer April 20, 2013
Format:Paperback|Amazon Verified Purchase
All books I read about java now are boring. They're simple for me. On the other hand, there are a lot of thing happening with the platform. You may harvest information in blogs and JSR or just may buy this book and get you brains updated )
Comment | 
Was this review helpful to you?
Most Recent Customer Reviews
4.0 out of 5 stars Sharp tools for busy Java developer
The Well-Grounded Java Developer is an interesting mixture of new stuff happening all around Java and JVM-related technologies. Read more
Published 1 month ago by vrto
3.0 out of 5 stars Deeper in the woods, the darker it gets
Like those straight 5 reviews ... as useful as
web likes.
----------------------------------------------
Anyway, this is good solid work of 3. Read more
Published 1 month ago by Vo Blinn
3.0 out of 5 stars Lesser and lesser impressed
Like those straight 5 reviews: as useful as web likes.

Anyway, this is good solid work of 3. Read more
Published 1 month ago by Vo Blinn
5.0 out of 5 stars Good introduction and explanation of new advanced concepts in Java 7
The best section is on Dependency Injection, followed by Polyglot section then new concurrency section. There are no bad sections.
Published 2 months ago by Kristian
5.0 out of 5 stars Interested in multitude of subjects this book covered.
Interested in multitude of subjects this book covered.

Java 7 differences
Projects
Still reading but did download the free ebook from Manning.
Published 3 months ago by LikedOpenArena
5.0 out of 5 stars Good book on the current Java ecosystem
This is a great book on the current Java ecosystem. It gave me a good (but brief) look at how to use the new Java 7 features. Read more
Published 3 months ago by Gary D. Gregory
5.0 out of 5 stars A lot of high-level concepts as well as nitty-gritty details
The book is broken up into 4 separate parts:

* Developing with Java 7
* Vital techniques
* Polyglot programming on the JVM
* Crafting the polyglot... Read more
Published 5 months ago by Matt Raible
5.0 out of 5 stars Well Grounded Java Developer
The Java technology arena has changed a lot in past 4-5 years. Whether you are grounded (or well grounded) Java developer and want to get yourself back on track with latest... Read more
Published 8 months ago by Usman Saleem
5.0 out of 5 stars Book by Java Practitioners
We all know that there is no money to be made in writing technical books. Ben and Martijn could probably earn their entire royalties in a day of consulting. Read more
Published 9 months ago by H. Kabutz
5.0 out of 5 stars learn about jvm languages, advanced java concepts and more
Want to be a good Java developer? What do you need to know? Java of course. That part is easy.

But unless you are a brand new Java developer, you probably aren't up to... Read more
Published 10 months ago by Jeanne Boyarsky
Search Customer Reviews
Only search this product's reviews

What Other Items Do Customers Buy After Viewing This Item?


Sell a Digital Version of This Book in the Kindle Store

If you are a publisher or author and hold the digital rights to a book, you can sell a digital version of it in our Kindle Store. Learn more

Forums

There are no discussions about this product yet.
Be the first to discuss this product with the community.
Start a new discussion
Topic:
First post:
Prompts for sign-in
 



So You'd Like to...


Create a guide


Look for Similar Items by Category