From: Arne Vajhøj on
On 23-04-2010 13:02, Lew wrote:
> Tom Anderson wrote:
>> You can download Thinking In Java for free, and people tell me that's
>> pretty good:
>>
>> http://www.mindview.net/Books/TIJ/
>
> I somewhat disagree that it's a good book.
>
> I got a lot out of it when I first learned Java, so in that it might
> help the OP. However its approach diverges somewhat from mainstream
> Java best practices, so it could engender bad habits that are hard to
> correct later on.
>
> If you're mindful of that risk and don't get imprinted on its approach
> like a duck on its mother, you should find it helpful.

For a beginners book I think the authors ability to explain
things well is more important than the language lawyer
correctness and following all best practices and patterns.

People do find Eckel, Horton, Schildt etc. valuable when
they start.

Arne
From: Tom Anderson on
On Sat, 24 Apr 2010, Pitch wrote:

> In article <29e289da-30b6-403b-bd38-
> f2839f3a0eeb(a)h31g2000prl.googlegroups.com>, blumstein.clarence(a)gmail.com
> says...
>
>> I have no money to buy any about java, but I want to learn java, what
>> should I do when I have no money to buy a good book?
>
> You don't need books to learn any language.

I bet there are some languages only used on IBM mainframes for which no
tutorial information is freely available. You'd need books to learn those.

tom

--
DO NOT WANT!
From: Tom Anderson on
On Fri, 23 Apr 2010, Arne Vajh?j wrote:

> On 23-04-2010 15:26, Tom Anderson wrote:
>> On Fri, 23 Apr 2010, Lew wrote:
>>> Tom Anderson wrote:
>>>> You can download Thinking In Java for free, and people tell me that's
>>>> pretty good:
>>>>
>>>> http://www.mindview.net/Books/TIJ/
>>>
>>> I somewhat disagree that it's a good book.
>>>
>>> I got a lot out of it when I first learned Java, so in that it might
>>> help the OP. However its approach diverges somewhat from mainstream
>>> Java best practices, so it could engender bad habits that are hard to
>>> correct later on.
>>
>> Could you expand on that? In what ways does it diverge?
>
> I have not read the book, but Bruce Eckel is known for not liking
> checked exceptions.

Ah, excellent point. That would be a very bad attitude to learn early in
one's career.

tom

--
DO NOT WANT!
From: Tom Anderson on
On Fri, 23 Apr 2010, Lew wrote:

> Tom Anderson wrote:
>>>> You can download Thinking In Java for free, and people tell me that's
>>>> pretty good:
>>>>
>>>> http://www.mindview.net/Books/TIJ/
>
> Lew wrote:
>>> I somewhat disagree that it's a good book.
>>>
>>> I got a lot out of it when I first learned Java, so in that it might
>>> help the OP. However its approach diverges somewhat from mainstream
>>> Java best practices, so it could engender bad habits that are hard to
>>> correct later on.
>
> Tom Anderson wrote:
>> Could you expand on that? In what ways does it diverge?
>
> Well, it's been a lot of years since I read it, so I had to go back and look
> at it again. I notice right away that he plunges into a discussion of
> inheritance with a section entitled "Inheritance: reusing the interface" in
> which he does not mention interfaces as such, but talks about base classes.
> Yes, concrete classes. That isn't thinking in Java at all.
>
> He comes around to interfaces as an afterthought, and presents them as
> something that "takes the concept of an abstract class one step further".
> This is backwards - the presentation should begin with interfaces and flow to
> concrete classes and instances.

Hmm. I think if you're teaching someone from the beginning, you need to
start with the simplest possible set of syntax and semantics, and you need
to start with programs that actually do something. That means you do have
to start with concrete classes.

If you then grow the set of semantics you're working with incrementally,
abstract classes would seem to naturally come before interfaces. I'm not
sure about that, though; if you talked about polymorphism (which is really
what we're talking about when we talk about the concept of interface, and
programming to an interface - the idea that a single method might have
multiple implementations that do different things) before inheritance,
then you could introduce interfaces before abstract classes.

I guess Eckels is writing in the traditional mode of OO thought, in which
inheritance was much more important than it is today. Given that his
background is in C++, that's not surprising. I wouldn't go so far as to
say that it's not "thinking in java", but it does seem a mistake to
describe only the traditional approach, and not the more modern one.

tom

--
DO NOT WANT!
From: Clarence Blumstein on
On Apr 23, 10:10 pm, "John B. Matthews" <nos...(a)nospam.invalid> wrote:
> In article
> <29e289da-30b6-403b-bd38-f2839f3a0...(a)h31g2000prl.googlegroups.com>,
>  Clarence Blumstein <blumstein.clare...(a)gmail.com> wrote:
>
> > I have no money to buy any [book] about java, but I want to learn
> > java, what should I do when I have no money to buy a good book?
>
> Start saving up now. In the interim, you can't go wrong with "The Java™
> Tutorial": <http://java.sun.com/docs/books/tutorial/reallybigindex.html>
>
> --
> John B. Matthews
> trashgod at gmail dot com
> <http://sites.google.com/site/drjohnbmatthews>

I'll try.....
First  |  Prev  |  Next  |  Last
Pages: 1 2 3 4 5
Prev: Keyboards
Next: web application load xls file ?