Re: Is there any specific book for learning java projects for beginners?
On 03/01/2012 09:33 AM, Gene Wirchenko wrote:
On Thu, 01 Mar 2012 00:11:38 -0800, Lew<noone@lewscanon.com> wrote:
Gene Wirchenko wrote:
navanshu wrote:
Uptill now i've read headfirstjava but i want to get my hands dirty by
making some simple java projects to get a feel how's done practically,
So plz suggest me guys some reference book
* "Head First Java"
* "Java"
"plz" is not a word in English.
If you simply follow someone else's project, you will not be
solving the problems yourself. Problem-solving is the key aspect of
doing this sort of thing in the first place.
Artists learn by imitating great artists.
And they paint their own paintings.
Following someone else's development of a project and copying it
is like using paint-by-numbers. That is not the same as imitating
great artists.
I agree with this point, as far as one is actually doing "paint by numbers".
I, too, excoriate thoughtless cargo-cult copying. I agree that we should
distinguish that bad practice from the good one of thoughtfully copying from
the masters after understanding what they did and why, and what it
accomplishes and costs.
My C++, and later, Java programming were immensely improved by studying the
examples in Bjarne Stroustrup's /The C++ Programming Language/. I'm not the
only one. People learn from good examples.
Of course. OP has already been studying. Now, it is time for
him to apply. After he has done some of that, he will probably
appreciate more in the books. And the cycle repeats indefinitely.
Solo macho superhero programming is only one technique for learning. Studying
examples is another.
He has already studied.
If any example projects that you see have code, ignore the code.
Baloney.
Maybe, you could look at it AFTER you come up with your own solution,
but before then, stay away from it.
Still baloney.
Well, no. OP is at the point where he has to apply what he has
been studying. All the good examples in the world will not change
this. In fact, he may not understand why some of the examples are the
way they are until he has gotten his hands dirty.
OK, I see your point now.
I suggest that you make up something simple to implement and then
keep adding to it.
Good suggestion.
One exercise that I have done in a number of languages is a
multiplication table. First, get the output somehow. Then, get it
nicely lined up. Then, have it be a choice of operators. (This can
complicate the formatting.) Allow user input. And so on. Play with
it until you quit learning from it. Then, make up another example.
Lather, rinse, repeat.
If you want to learn about string handling, write a simple text
adventure.
Hmm - might not be the greatest way to focus on string handling.
It will get the basics. If he needs something else, then he can
do something else.
I am concerned because he might not get the basics. There is a lot that goes
into writing a text adventure besides string handling that might obscure the
lesson.
And what constitutes a "simple" text adventure [game]?
A few rooms, a few objects, a few special commands. If it gets
so complicated that the focus is no longer learning, then he is
off-track. This is not to say that he could not write a complicated
program, but then it is no longer just a pedagogical tool.
You might be right at that. I fear only that it's already too complex for a
pedagogical tool, but maybe I'm wrong.
If you want to learn about file handling, write a program to scan
a file.
Pick something of interest to you that is simple, and run with
it.
If you try to do everything yourself without reference to good examples, you
risk falling into some very bad habits. Yes, do practice writing code, but for
goodness' sake don't do it in a vacuum!
He has already studied.
And now he's done?
I beg to differ.
I don't write professional code without looking at references, and I don't
learn that way either. And I learn pretty quickly, so either I have a pretty
good learning technique or I'm just really, really smart. Or both.
But given that many others benefit from, and quite a few pedagogical texts
recommend, good examples, I wouldn't bet against the learning technique theory.
Well, I go back and forth between studying and trying it myself.
Now /that/ is good practice!
I went through most of a fairly thick JavaScript book. I did try
nearly all of the examples to see how they worked when it was not
obvious (study), but I also made modifications to them to experiment
(application). Flipping back and forth between them ensures that one
masters what one has studied.
I agree with your principles, and now with your elucidated points (mostly).
Thanks for the clarification.
--
Lew
Honi soit qui mal y pense.
http://upload.wikimedia.org/wikipedia/commons/c/cf/Friz.jpg