To learn or not learn?
Today I went to my local college's library and borrowed Sam's Teach Yourself Java 2 in 21 Days Second Edition thinking that I'd get a bit of a head start prior to commencing my Bachelor of Computing next week. However, I have now come to realise that it is in fact 10 years old and I was wondering if I should perhaps hold off my learning until I can get my hands on a more updated edition. Is everything covered in this edition still relevant and accurate or have there been enough significant enough improvements/changes since then to warrant me trying to get a newer edition?
Thanks in advance.
First of all: Teach Yourself Programming in Ten Years
It won't hurt as long as the book is about Java 2, because you're only missing some features, which are not overly important to a beginner.
If you want to get a head start have a look at The List™:
Sun's basic Java tutorial
Sun's New To Java Center
Includes an overview of what Java is, instructions for setting up Java, an intro to programming (that includes links to the above tutorial or to parts of it), quizzes, a list of resources, and info on certification and courses.
A general Java resource site. Includes FAQs, forums, courses, more.
To quote the tagline on their homepage: "a friendly place for Java greenhorns." FAQs, forums (moderated, I believe), sample code, all kinds of goodies for newbies. From what I've heard, they live up to the "friendly" claim.
The Java Developers Almanac
Example Depot | Useful code samples
Bruce Eckel's Thinking in Java(Available online.)
Joshua Bloch's Effective Java
Bert Bates and Kathy Sierra's Head First Java
James Gosling's The Java Programming Language
Gosling is the creator of Java. It doesn't get much more authoritative than this.
Joshua Bloch and Neal Gafter Java Puzzlers.
In my opinion becoming a great programmer isn't about know everything about the newest thing. To me it is more about the problem solving. The Internet is a beautiful thing when writing code, but the Internet can not write it for you, it can tell you how (syntax wise) to do mostly everything you will need. In order to actually become a programmer you need the mind set that goes with it, and I happen to think my father's books from college do a better job at that then the books today, so in short yes read it. Enjoy coding it can be fun.
Thanks for all your help guys :) I'll definitely check out some of the links you posted PhHein.
Headstarts are good! I'll have five years when I finally reach university :) *prepares for very boring first year of CS-related stuff*
On a more serious note... I think PhHein missed the Java API Documentation. May not be much help to you now, but in 2 weeks you'll find yourself staring at it. I did, at least.
Recommended Suns' official tutorial, and then Sams' Teach Yourself series. If you could do all the examples there, more than enough to do something really valuable with Java. Good luck. :)