• Post Reply Bookmark Topic Watch Topic
  • New Topic

Effective Java (2nd Edition) by Joshua Bloch still relevant?  RSS feed

 
Melvin Guntanis
Greenhorn
Posts: 4
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
is effective Java still relevant for Java 8? I was reading great reviews about this book but I'm afraid it may be outdated since its from 2008. If so what other more recent book are similar to this one?.
thanks
 
Tim Cooke
Marshal
Posts: 4048
239
Clojure IntelliJ IDE Java
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
A similar question was asked a couple of months ago: Should Bloch write a 3rd Edition for Java 8?
 
Campbell Ritchie
Marshal
Posts: 56553
172
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Thank you for referring to my question.

Yes, the book is still relevant.
 
Rob Spoor
Sheriff
Posts: 21135
87
Chrome Eclipse IDE Java Windows
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I've re-read the book just a few weeks ago, and yes, it's still very relevant. The only things that I found funny were statements like "interfaces can't have static methods" and "interfaces can't have implementations" - which they can since Java 8.

I would like to have an updated version for tips and tricks for streams, lambdas and other Java 8 language features, but we'll just have to wait for that.
 
Winston Gutkowski
Bartender
Posts: 10575
66
Eclipse IDE Hibernate Ubuntu
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Rob Spoor wrote:I've re-read the book just a few weeks ago, and yes, it's still very relevant. The only things that I found funny were statements like "interfaces can't have static methods" and "interfaces can't have implementations" - which they can since Java 8.

I would like to have an updated version for tips and tricks for streams, lambdas and other Java 8 language features...

Me too; mainly because I suspect that these new features are likely to get abused.

The docs will tell you what these new features do; but they rarely tell you when (or, maybe more importantly, why) you would use them. And that's what Effective Java has always been so good at: It's a "why to" book.

For example: When is it worth implementing a 'default' method? I'm sure there are good cases for it, but I'm equally sure that you don't want to do it all the time. After all, the language survived for almost 20 years without them.
Same with streams and lambdas: they look very useful to me; but I'm not sure I'd want to see a program littered with 'em. Java isn't, and never will be, a functional language, but version 8 is starting to look a bit like the early version of C++ - "Java with closures".

So Josh, please tell us why and when.

Winston
 
Piet Souris
Master Rancher
Posts: 2044
75
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Winston Gutkowski wrote:(...)
For example: When is it worth implementing a 'default' method? I'm sure there are good cases for it, but I'm equally sure that you don't want to do it all the time. After all, the language survived for almost 20 years without them.
Same with streams and lambdas: they look very useful to me; but I'm not sure I'd want to see a program littered with 'em. Java isn't, and never will be, a functional language, but version 8 is starting to look a bit like the early version of C++ - "Java with closures".

So Josh, please tell us why and when.

Winston

You have answered your own question: if you didn't need something in the last 20 years, you don't need them now.
Same with streams and lambda's: is there anything that you can do with these things that you couldn't do before?

But it all is new, and so is the urge to use it huge. And rightly so, you can do some things much more easily or
much more shorter.

My advice: don;t wait for mr. Bloch to come with the answers. As soon as you gain some knowledge and some
experience, in Java and/or programming, you'll find it out by yourself
 
Winston Gutkowski
Bartender
Posts: 10575
66
Eclipse IDE Hibernate Ubuntu
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Piet Souris wrote:You have answered your own question: if you didn't need something in the last 20 years, you don't need them now.
...
My advice: don;t wait for mr. Bloch to come with the answers.

Don't worry, I won't. However, there are a pile of things in Java that aren't strictly needed, or are best done or used in a particular way - and that's what EJ has always been so good at: Explaining why.

Perhaps it needs someone with more experience in functional languages; but I'd really like to see (or know about) a version 8 "why to, and when to" book - whether it's EJ, or any other.

Winston
 
Melvin Guntanis
Greenhorn
Posts: 4
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
thanks for the answers, I'll go buy it now!!
 
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!