Java Forum / General / November 2007
I've Read A Intro Book To Java, What's Next?
Enteng - 15 Nov 2007 09:12 GMT Hi guys! I've finished reading Beginning Programming with Java For Dummies today and I still want to learn more about java. What books would you guys suggest that I read next?
I'm planning on reading "Just Java" by by Peter van der Linden and then go on reading "Thinking in Java" next.
Do you guys have any suggestions? I'd really appreciate them. Thanks!
-Enteng
Chris Dollin - 15 Nov 2007 09:40 GMT > Hi guys! I've finished reading Beginning Programming with Java For > Dummies today and I still want to learn more about java. What books [quoted text clipped - 4 lines] > > Do you guys have any suggestions? (a) /Write some code/. You don't learn programming without programming.
(b) Learn to use JUnit. This requires (a) and further gives you a way to be more confident that you know what you're doing/have done.
Reading books is Good Stuff, but it can only take you so far. (Similarly, writing code is Good Stuff, but it can only take you so far. Monomania is a tool, not a lifestyle.)
 Signature Chris "cackling with exclamation marks" Dollin
Hewlett-Packard Limited registered no: registered office: Cain Road, Bracknell, Berks RG12 1HN 690597 England
Enteng - 15 Nov 2007 11:23 GMT > > Hi guys! I've finished reading Beginning Programming with Java For > > Dummies today and I still want to learn more about java. What books [quoted text clipped - 19 lines] > Hewlett-Packard Limited registered no: > registered office: Cain Road, Bracknell, Berks RG12 1HN 690597 England That's good advice, thanks man.
As much as I'd like to code some more, I think my knowledge of Java is not enough. It feels like I'm still missing some things. I want to contribute to projects someday I just don't know if I'm good enough to (or how to find one).
Chris Dollin - 15 Nov 2007 11:42 GMT >> > Do you guys have any suggestions? >> [quoted text clipped - 4 lines] > > That's good advice, thanks man. Other piece of advice: read other people's real live code. Preferably something you have reason to believe isn't horrible. Pick an open source project and have a look -- it will be overwhelming, because at first you'll have no idea how to find your way around, or what it's for, but that's OK; you can stop at any time and do something else until things start making sense.
I couldn't possibly suggest /which/ open-source you look at.
> As much as I'd like to code some more, I think my knowledge of Java is > not enough. It feels like I'm still missing some things. I want to > contribute to projects someday I just don't know if I'm good enough to > (or how to find one). You won't be good enough without practice, and a good way to find out what you're missing is to code something. At first you'll probably make a complete pig's ear of it; worry not. Make a little project of your own. I stress /little/. (Nothing that involves a GUI or XML counts as "little".) The point is to get moving, not to solve a real problem.
I'd also advise using an IDE, such as Eclipse, although you /might/ find that overwhelming all on its own unless you have a chum who can get you started. (Other people advise starting entirely on the command-line with a bare text editor. If you've done programming in other languages, you might already know your preferences.)
 Signature Chris "deliberately didn't mention Jena" Dollin
Hewlett-Packard Limited registered office: Cain Road, Bracknell, registered no: 690597 England Berks RG12 1HN
Lew - 15 Nov 2007 12:33 GMT Enteng wrote:
>>>> Do you guys have any suggestions? /Effective Java/, by Joshua Bloch. You must own this book.
 Signature Lew
Chris ( Val ) - 15 Nov 2007 13:09 GMT > Enteng wrote: > >>>> Do you guys have any suggestions? > > /Effective Java/, by Joshua Bloch. You must own this book. In view of you having mentioned this book so often, I picked it up in the bookstore the other day to have a quick browse through it, and I think it is a good book.
However, I have to disagree with your recommendation of it for the level of the OP, because it is a best practices book, and not for beginners, which incidentally, it even states in its introductory page.
A better book (imo), is the new "Core Java" book: http://www.horstmann.com/corejava.html
I would even take a look at Bruce Eckles free book, to become familiar with a lot of the Java features.
-- Chris
Chris ( Val ) - 15 Nov 2007 13:12 GMT [snip]
> I would even take a look at Bruce Eckles free book, [snip]
Of course that should be: "Bruce Eckel" :-)
-- Chris
Patricia Shanahan - 15 Nov 2007 14:35 GMT >>> Hi guys! I've finished reading Beginning Programming with Java For >>> Dummies today and I still want to learn more about java. What books [quoted text clipped - 23 lines] > contribute to projects someday I just don't know if I'm good enough to > (or how to find one). You will go on "missing some things" until you do a bunch of programming in Java.
There is an awkward chicken-and-egg problem. It is difficult to write a even a simple program in a language you do not know, but I have never seen anyone learn a programming language without writing programs in it.
The solution is to start with very simple little programs and gradually work up. The first programs will be throw-aways - things you write just to learn, and never use, so they don't need to do anything really useful.
Patricia
Enteng - 15 Nov 2007 14:56 GMT Thanks for the suggestions! I know I have to code a lot but I'm lost. I mean I don't have any guides on what to do. I mean what should I learn first? What should I concentrate on(aspects of java that's most handy in the IT field)?
Would a book that'll guide me help? I'm kind of looking for a next book after the Beginning Programming with Java Dummies book. Everyone's suggesting different books but I don't know what's the best for me.
Again, thanks. I appreciate all of your feedbacks :)
Mark Space - 15 Nov 2007 18:04 GMT > As much as I'd like to code some more, I think my knowledge of Java is > not enough. It feels like I'm still missing some things. I want to > contribute to projects someday I just don't know if I'm good enough to > (or how to find one). Try Sang Shin's intro to programming course. He does a very reasonable job of starting you off with very small programs, then he continues with reasonable small examples for you to extend and test your knowledge. He also has NetBeans projects with all the examples so you can start by just looking at the code.
The class is now to far advanced for you to catch up, I think. But you can always just work on the examples, since everything is posted on the web. There's no "lecture" or other hands on by Shin, so you aren't missing anything.
Shin's web site: http://javapassion.com/
And the intro course: http://www.javapassion.com/javaintro/
Martin Gregorie - 15 Nov 2007 22:05 GMT > Try Sang Shin's intro to programming course. He does a very reasonable > job of starting you off with very small programs, then he continues with [quoted text clipped - 6 lines] > web. There's no "lecture" or other hands on by Shin, so you aren't > missing anything. I'd add a slightly hesitant recommendation for "The Practice of Programming" by Kernighan and Pike. I think its an excellent book and needs to be in the personal library of every serious programmer because it covers everything from sensible ways of laying out readable code through to debugging and (most important) designing code for ease of debugging. Its probably a good book to get when you think you're getting to understand Java. To help you along with your own initial projects it has good development examples and exercises.
I said hesitant because it mixes examples in C, C++ and Java into most chapters, but on the other hand its a fairly thin (15mm) and inexpensive paperback and, like everything I've read by Brian Kernighan, is very well written.
Summary: take a look at it: if you like the book you may find that Java for Dummies plus this will get you quite well along.
Tools: I'm firmly of the opinion that Java is best learnt using only your favorite text editor, the latest Sun Java SDK and a command line. Admittedly its easier with a decent command shell in place of the DOS/Windows abomination, but it can be done - I did it.
Next consider adding ant to your toolkit. Finally, when you understand the basics of writing and building Java code it might be time to look at IDEs. Me? I don't use 'em.
 Signature martin@ | Martin Gregorie gregorie. | Essex, UK org |
Tobi - 15 Nov 2007 13:26 GMT > Hi guys! I've finished reading Beginning Programming with Java For > Dummies today and I still want to learn more about java. What books [quoted text clipped - 6 lines] > > -Enteng "Beginning Java 2" by Ivor Horton is a *really* good book, IMHO. The other good book I would say to check out is "Head First Java" by Kathy Sierra and Bert Bates.
But I definitely agree with an earlier thread that said you should just write code. That is critical. And, the books that will help most with your understanding will depend somewhat on if you are entirely new to programming, or if you have programmed in other languages and have the general concepts.
Good Luck!
Tobi
Roedy Green - 15 Nov 2007 23:06 GMT >Hi guys! I've finished reading Beginning Programming with Java For >Dummies today and I still want to learn more about java. What books [quoted text clipped - 4 lines] > >Do you guys have any suggestions? I'd really appreciate them. Thanks! You have to alternate reading with doing. Just reading gives the ILLUSION you understand and it can get you in deep long-lasting trouble if you don't test your assumptions with experiments.
See http://mindprod.com/project/projects.html
Try out some of the coding projects with difficulty 0 or 1, or make up you own.
IRRC Peter's book has example problems. They would be great to tackle too.
After you have done a bunch, you might reread your first book to see if you glossed over something, or if the words have deeper significance.
Then keep going with your reading. Both your choices are excellent.
See http://mindprod.com/jgloss/gettingstarted.html
 Signature Roedy Green Canadian Mind Products The Java Glossary http://mindprod.com
Enteng - 15 Nov 2007 23:54 GMT Oh BTW I got a question that's been bugging me. Is it ok to learn from old Java books (like circa 2001)? I got access to Java: An Introduction to Computer Science & Programming (2nd Edition) by Walter Savitch, is it any good?
The Dummies book that I've read is easy to read but it has no examples. What I did was read his example programs and at the start of the next chapter I try to code the examples that I've read.
I got to ask you guys when you were starting out programming and at my stage, how did you get better? I mean maybe you did write a lot of code but how did you know what to write? How did you know what to write next? What lead you into becoming a better programmer that you are right now?
Jeff Higgins - 16 Nov 2007 00:36 GMT > ... I mean maybe you did write a lot of > code but how did you know what to write? How did you know what to > write next? What lead you into becoming a better programmer that you > are right now? What interests you? graphics, imaging, mathematics, physics, language, writing, text processing, data collection, manipulation, games, becoming a programmer, etc., etc.
write lots of code read lots of code read lots of ... write lots of code read lots of programming group discussions read lots of ... write lots of code ask here when you get stuck, include SScce, use twc.jnlp read lots of code write lots of code take a break, repeat
Roedy Green - 16 Nov 2007 05:25 GMT On Thu, 15 Nov 2007 19:36:04 -0500, "Jeff Higgins" <oohiggins@yahoo.com> wrote, quoted or indirectly quoted someone who said :
>What interests you? This is really important. If you do projects that feel artificial and pointless, they will destroy your motivation. If you do projects you can hardly wait to see working, you will put out super effort to break through the difficulties.
Consider the "problems" they gave you in elementary school. When I taught kids at computer summer camp, the problem was to create a primitive video game. The kids chased me around begging me to teach them trig that I had "leaked" to another student.
 Signature Roedy Green Canadian Mind Products The Java Glossary http://mindprod.com
Jeff Higgins - 17 Nov 2007 21:32 GMT The 3R's for Programmers: Reading, Writing, Running.
Lew - 16 Nov 2007 02:28 GMT > Oh BTW I got a question that's been bugging me. Is it ok to learn from > old Java books (like circa 2001)? I got access to Java: An > Introduction to Computer Science & Programming (2nd Edition) by > Walter Savitch, is it any good? Why not read the Sun tutorials on java.sun.com?
Old books are all right, but if they don't cover at least Java 5 they might lead you astray in: - Swing programming; - concurrent programming generally; - suggesting that you use Vector or Hashtable instead of the newer List or Map implementations; - optimization techniques.
So disregard those matters in any book that doesn't cover Java 5 or later.
Seriously, the Sun tutorials are most likely the best place to go next.
IBM DeveloperWorks has a whole bunch of great Java programming articles.
And always remember, GIYF.
 Signature Lew
Roedy Green - 16 Nov 2007 05:21 GMT >Oh BTW I got a question that's been bugging me. Is it ok to learn from >old Java books (like circa 2001)? I got access to Java: An >Introduction to Computer Science & Programming (2nd Edition) by >Walter Savitch, is it any good? Generally old books are fine. It is not that Java has changed, just been added to. You can save quite a bit of money by acquiring books even a year out of date. You may find people here willing to hand over their old books for the cost of shipping.
The books help you get the overall picture. You read the javadoc about specific classes for the details, so you don't need perfectly detailed texts.
The one thing though is Generics have in a major way redefined the way you do Collections. I would in parallel read essays linked to at http://mindprod.com/jgloss/generics.html when you get to the sections on Collections in your texts. Also have a good look as some of Sun's code and how it uses Generics. They are much more complicated than you might at first imagine.
I could make an argument why you should learn the older AWT before you tackle Swing. It is not as overwhelming. It focuses on the meat rather than the decoration.
Swing does pretty well everything AWT does with minor variations, plus a ton of stuff to get finer control of the look. You can learn the differences from http://mindprod.com/jgloss/swing.html#AWTEQUIVALENTS
 Signature Roedy Green Canadian Mind Products The Java Glossary http://mindprod.com
Enteng - 16 Nov 2007 09:26 GMT On Nov 16, 1:21 pm, Roedy Green <see_webs...@mindprod.com.invalid> wrote:
> >Oh BTW I got a question that's been bugging me. Is it ok to learn from > >old Java books (like circa 2001)? I got access to Java: An [quoted text clipped - 3 lines] > Generally old books are fine. It is not that Java has changed, just > been added to. You can save quite a bit of money by acquiring books Won't I form bad programming habits by reading old books?
> even a year out of date. You may find people here willing to hand > over their old books for the cost of shipping. That would be great! I'm happy to spend for shipping if anyone's interested :)
> The books help you get the overall picture. You read the javadoc > about specific classes for the details, so you don't need perfectly [quoted text clipped - 5 lines] > Also have a good look as some of Sun's code and how it uses Generics. > They are much more complicated than you might at first imagine. Ok I'll keep that in mind. Your site is quite useful.
> I could make an argument why you should learn the older AWT before you > tackle Swing. It is not as overwhelming. It focuses on the meat [quoted text clipped - 6 lines] > Roedy Green Canadian Mind Products > The Java Glossaryhttp://mindprod.com Roedy Green - 16 Nov 2007 11:32 GMT >Won't I form bad programming habits by reading old books? No. You develop bad habits by reading trashy books, new or old.
If you got a very very old book, it would show you the JDK 1.0 event model which has drastically changed.
If you read about Collections before generics were invented, and refused to learn generics, that would get you in trouble.
The important stuff, how to decompose problems, how to name, how to document, has not changed at all.
 Signature Roedy Green Canadian Mind Products The Java Glossary http://mindprod.com
Enteng - 17 Nov 2007 04:37 GMT Do you guys know a site where I can learn java source codes from?
Andrew Thompson - 17 Nov 2007 05:33 GMT >Do you guys know a site where I can learn java source codes from? The 'Java Tutorial' mentioned by Lew earlier in the thread has plenty of code examples, though watch for deprecated methods. <http://www.google.com/search?as_filetype=java&as_sitesearch=java.sun.com>
 Signature Andrew Thompson http://www.athompson.info/andrew/
Lew - 17 Nov 2007 06:17 GMT >> Do you guys know a site where I can learn java source codes from? > > The 'Java Tutorial' mentioned by Lew earlier in the thread > has plenty of code examples, though watch for deprecated > methods. > <http://www.google.com/search?as_filetype=java&as_sitesearch=java.sun.com> There are an awful lot of open-source projects out there. sourceforge.net 's got a million of 'em. You can download the source from any such project and toy with it all you want.
JavaBlueprints has a bunch of ready-to-wear solutions: <http://java.sun.com/reference/blueprints/>
Check out the "Related Links" section on the side of that page.
IBM developerWorks: Java is a superb source: <http://www.ibm.com/developerworks/java>
 Signature Lew
Jeff Higgins - 17 Nov 2007 16:40 GMT > Do you guys know a site where I can learn java source codes from? <http://www.leepoint.net/notes-java/index.html> <http://www.rgagnon.com/howto.html> <http://www.java2s.com/> <http://www.dickbaldwin.com/toc.htm> <http://www.apl.jhu.edu/~hall/java/> <http://mindprod.com/jgloss/jgloss.html> <http://java.about.com/> <http://www.javaworld.com/> <http://www.java.net/> <http://martinfowler.com/> <http://www.javalobby.org/> <http://developers.sun.com/> <http://javaboutique.internet.com/> <http://www.ibm.com/developerworks/java/> <http://www.apache.org/> <http://www.onjava.com/> <http://horstmann.com/corejava.html> <http://www.jexamples.com/about.html>
Greg Miller - 17 Nov 2007 06:33 GMT > Hi guys! I've finished reading Beginning Programming with Java For > Dummies today and I still want to learn more about java. What books > would you guys suggest that I read next? Well, what do you want to do? I'm going to assume you plan to program for a living some day. In which case I'd recommend moving on to higher level books which don't focus so much on the language, but rather on methods of getting actual work done. If you focus just on learning Java, you won't actually learn how to make Java do useful things. A book on data structures and algorithms is probably a good second step. But you'll eventually want to learn databases, computer structure, design patters, object oriented principles, discrete mathematics, and a lot more I can't think of right now. Taken a step at a time it will eventually all come together.
Andrew Thompson - 17 Nov 2007 08:01 GMT ...
>.. But you'll eventually want to learn databases, computer >structure, design patters, ... - Design matters? - Design patterns? - The pitter-patter of many little designs? - ..
 Signature Andrew Thompson http://www.athompson.info/andrew/
Free MagazinesGet these publications absolutely FREE for up to 12 months. There are no hidden fees and no obligation. Simply choose a title, complete the application form and submit it. Read more ...
|
|
|