Welcome to the MacNN Forums.

If this is your first visit, be sure to check out the FAQ by clicking the link above. You may have to register before you can post: click the register link above to proceed. To start viewing messages, select the forum that you want to visit from the selection below.

You are here: MacNN Forums > Software - Troubleshooting and Discussion > Developer Center > OOP Java Book Recomendations?

OOP Java Book Recomendations?
Thread Tools
JFischel
Mac Enthusiast
Join Date: Sep 2000
Location: New York, NY
Status: Offline
Reply With Quote
Jan 24, 2006, 05:47 PM
 
All,


Does anyone have a suggestion for a "hard core" OOP Java book or resource?

I'm a former and long time C++ programmer and I've mastered the essential syntax and uses of the Java language. But, I'm hoping to find a reference that focuses on the ins and outs of Java OO programing specifically, and doesn't have the other fluff that's part of other "so you want to be a programmer" guides...

Many thanks,

Josh
20 Inch Intel iMac * MacBook 2 GHz * 60GB iPod * 4GB iPhone
     
popfilter
Fresh-Faced Recruit
Join Date: Feb 2006
Location: Indianapolis
Status: Offline
Reply With Quote
Feb 6, 2006, 11:42 AM
 
If you're comfortable with the syntax, then you might be looking more for books on applying OOP and methodologies. Look into a book about OOP Patterns...it really gives you perspective on how to get full use of OOP, its tricks, and how to use OOP beyond just basic reusablity.

I've found 2 great books on this subject...one's an easy read, the other is extremely dry.

Head First Design Patterns is excellent for taking the complex ideas of OOP and making it as "fun" as possible...I've learned more about OOP with this book than many other books...kept my attention well. It assumes you know UML and Java.

Design Patterns in Java is detailed and covers a ton. Very dull read, but is an excellent reference. Like most books on this subject, it assumes you know how to read UML class diagrams and that you know the syntax of an object oriented language (Java is dominant in teaching Patterns).
     
Dr.Michael
Registered User
Join Date: Oct 2003
Status: Offline
Reply With Quote
Feb 7, 2006, 05:40 AM
 
A more general Book on patterns is: Design Patterns, Elements of Reusable Object-Oriented Software (Addison-Wesley Professional Computing Series) by Erich Gamma, Richard Helm et al.

This one is not dull and it covers patterns independ of the language. Highly recommend it.

The best general book on Java imho is Bruce Eckels Thinking in Java (available online). It has all introduction stuff, but also for experienced programmers Eckel is never dull (just skip some chapters).

If Eckel is too low level for you I can only recommend literature on special topics: Java2d Graphics for ex. A useful resource with many examples is the Java Cookbook or the java developers almanach. Looking at the examples you will get deep insight into the ideas behind java.

Just being curious: Why do you go from C to Java? I am going the other direction currently because I found that java works only great on Macs, but there it is slow. Windows and linux require the installation of the vm from the user and thus java is nothing for commercial software on these platforms.
     
popfilter
Fresh-Faced Recruit
Join Date: Feb 2006
Location: Indianapolis
Status: Offline
Reply With Quote
Feb 7, 2006, 09:27 AM
 
Why do you go from C to Java?
I can't tell you why JFischel did such...but for some perspective, I landed in C# land because it pays the bills and then some. At times I'd rather be toying in C/Objective-C or Java (now that Eclipse is getting solid)...then I shake my head and realize I have to go with the client's demand, which is not research, graphics, etc. From dabling with C# since it was concieved, it was easy to see that every language has its quirks and strengths.

But, that's just my perspective (whether you wanted it or not ). Plus, maybe I'm getting older; thinking its all about demand vs. personal preference.
     
Dr.Michael
Registered User
Join Date: Oct 2003
Status: Offline
Reply With Quote
Feb 9, 2006, 06:26 AM
 
Originally Posted by popfilter
I can't tell you why JFischel did such...but for some perspective, I landed in C# land because it pays the bills and then some. At times I'd rather be toying in C/Objective-C or Java (now that Eclipse is getting solid)...then I shake my head and realize I have to go with the client's demand, which is not research, graphics, etc. From dabling with C# since it was concieved, it was easy to see that every language has its quirks and strengths.

But, that's just my perspective (whether you wanted it or not ). Plus, maybe I'm getting older; thinking its all about demand vs. personal preference.
Well, yes. I respect that. Bills have to be paid - both the paper ones and the one with a tie and thick glasses. A pitty that this is a reason to choose a language because the corporate people who decide mostly don't even know what they are talking about.

What interests me more is a "real" reason meaning: why is it better, or what purposes does it serve better? Sorry - I am a scientist and usually not much interested in paying Bills.
( Last edited by Dr.Michael; Feb 9, 2006 at 06:32 AM. )
     
Kristoff
Mac Elite
Join Date: Sep 2000
Location: in front of the keyboard
Status: Offline
Reply With Quote
Feb 11, 2006, 06:36 PM
 
Originally Posted by Dr.Michael
Just being curious: Why do you go from C to Java? I am going the other direction currently because I found that java works only great on Macs, but there it is slow. Windows and linux require the installation of the vm from the user and thus java is nothing for commercial software on these platforms.
what?

What's so hard about going to www.java.com?
signatures are a waste of bandwidth
especially ones with political tripe in them.
     
Dr.Michael
Registered User
Join Date: Oct 2003
Status: Offline
Reply With Quote
Feb 17, 2006, 05:51 AM
 
Originally Posted by Kristoff
what?

What's so hard about going to www.java.com?
Nothing at all. Not for me and not for you.
But for customers who want to do their work and are hardly capable to install a new program, it is definitely too much. They download, install and get the message "please find and install a java vm first". Thats it. 90 percent will go and find another software.

I had customers who claimed they don't like java applications because the delay of swing buttons was like 1/10 s of a second longer compared to native windows interface buttons. And the window decorations are not exactly the same (even in Windows look and feel the colors don't match perfectly). And thats not only theory: because of this feeling uncomfortable they throw away 6 weeks of development and started again (in c++). Thats trashing 30000$+.

Things are different where applications without user interface are concerned and specialists deal with the software.

Platform independence is an advantage for developers and software companies, not for customers. At least not until they change the platform. But then they automatically have a budget and thus don't care for platform independence again.
     
   
 
Forum Links
Forum Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Top
Privacy Policy
All times are GMT -4. The time now is 07:34 AM.
All contents of these forums © 1995-2017 MacNN. All rights reserved.
Branding + Design: www.gesamtbild.com
vBulletin v.3.8.8 © 2000-2017, Jelsoft Enterprises Ltd.,