Java needs to make me go OO
October 9, 2014 9:00 AM   Subscribe

After getting laid off due to restructuring (boo!), a contact helped me get a phone interview for a really cool position (yay!). However, it's a Java web developer role, whereas my experience is PHP/perl; I'd have to reach back 15+ years to school for the last time I did object-oriented coding myself, although I've done a lot of C# code reviewing recently. There's going to be coding/design questions, so I'm studying like crazy. Most of the Java stuff I'm finding is either targeted towards experienced C++/C# programmers, OR total beginners ("this is an IDE, drp"). Pointers on best resources for someone who's got a coding background that's just not OO?
posted by laeren to Computers & Internet (9 answers total) 6 users marked this as a favorite
 
Best answer: What you want is Thinking In Java. It's even available free online if you're not first blinded by the funky web design.
posted by emilyw at 9:08 AM on October 9, 2014 [2 favorites]


It's been a long time since I wore a Java hat but I'll second Thinking in Java. When you say 'Java web developer', is that to say you'd be working on "Java Enterprise Edition" projects, where code runs in Tomcat? If so that's sort of its own learning curve; I remember wrapping my head around Java, but also having to get familiar with the way Tomcat does things, where some of your code lives in compiled "Servlets" and output is usually managed with JSP (Java Server Pages.) I gave my copy away a long time ago but I remember the O'Reilly JSP Book being pretty good.
posted by usonian at 9:29 AM on October 9, 2014 [1 favorite]


Yeah, Thinking In Java is the canonical answer to this question, with the caveat that if your potential employer is using up to the minute Java then it isn't going to cover the newer features in Java 7 or 8.
posted by pharm at 9:39 AM on October 9, 2014


Best answer: I would pick up a copy of Effective Java as well. I have witnessed more than one interviewer draw heavily from the book.
posted by phil at 9:47 AM on October 9, 2014


Best answer: Effective Java is a great resource. I also like Head First Design Patterns, but read a sample chapter to see if it's your style first; it very much works for some people, while others have an enormous hatred of the Head First series.
posted by zachlipton at 10:23 AM on October 9, 2014 [1 favorite]


I agree with usonian. If this is for a web dev role, you might actually be better off learning servlets and JSPs (or whatever is the current state of the art). I doubt you've really 'forgotten' OOP so much so that if the JSP book says "this class inherits from X", you'd be stumped as to what it means (If not, then yeah, thinking in Java is good and free). You'll probably be better served by learning how Java does web dev vs. PHP/Perl.
posted by thewumpusisdead at 10:39 AM on October 9, 2014


Best answer: Here's a direct link to the download page for the 3rd edition of Thinking in Java.
posted by Sayuri. at 12:25 PM on October 9, 2014


Response by poster: Marking as best the ones that seem most useful for interview prep, vs what I might need once I hypothetically got the job, but all comments were helpful, thanks! I'd looked at the site for Thinking in Java a day or two ago, had indeed been blinded by its funky web design, and had bolted, so it's great to know I should go back there.

Leaving open in case someone else sees this in the next few days and has a non-canonical recommendation.
posted by laeren at 9:24 PM on October 9, 2014


Seconding Head First Design Patterns. Pretty sure I've recced it here before. It's a terrific way to get into OOP.
posted by j_curiouser at 1:59 AM on October 10, 2014


« Older Help me find my holy grail of travel coffee mugs   |   Nobody remembers second-place, apparently Newer »
This thread is closed to new comments.