Prev: Keyboards
Next: web application load xls file ?
From: Arne Vajhøj on 23 Apr 2010 20:30 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 24 Apr 2010 07:27 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 24 Apr 2010 07:27 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 24 Apr 2010 07:41 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 24 Apr 2010 23:50
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..... |