I've Read A Intro Book To Java, What's Next?

E

Enteng

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
 
C

Chris Dollin

Enteng said:
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?

(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.)
 
E

Enteng

(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.)

--
Chris "cackling with exclamation marks" Dollin

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).
 
C

Chris Dollin

Enteng said:
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.)
 
C

Chris ( Val )

/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.
 
T

Tobi

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

"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
 
P

Patricia Shanahan

Enteng said:
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).

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
 
E

Enteng

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 :)
 
M

Mark Space

Enteng said:
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/
 
M

Martin Gregorie

Mark said:
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.
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.
 
R

Roedy Green

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!

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
 
E

Enteng

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?
 
J

Jeff Higgins

Enteng wrote
... 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
 
L

Lew

Enteng said:
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.
 
R

Roedy Green

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
 
R

Roedy Green

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.
 
E

Enteng

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
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 athttp://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.

Ok I'll keep that in mind. Your site is quite useful.
 
R

Roedy Green

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.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,743
Messages
2,569,478
Members
44,899
Latest member
RodneyMcAu

Latest Threads

Top