Seeking a special beginner's book
Apologies for starting another thread on books. The others I have seen do not help with my problem.
Please, can someone tell me the title of a book for beginners (or the link to a tutotial website) that does not violtae the following principle: a new concept or term must not be used until it has been defined or formally introduced, OR its first usage is accompanied by the definition.
Here is an example of the problem. The first piece of code shown in Sun's tutorial on JAVA (the one illustrating the "bicycle class") contains the following terms that refer to concepts NOT previously defined and not defined when first used: int, void, decrement, printStates(), System.out.print. As another example, in another tutorial elsewhere designed fr beginners, the beginner is given sample code containing the modifiers public, private, etc., with NO previous or concurrent definition of these terms.
Folks, JAVA programming itself requires this principle, and all learning in math and logic requires that the principle be respected.
Why am I seeing so many so-called "for-beginner" treatises that violate it blatantly?
I've been programming for eons; not doing OOP, but doing a lot complex stuff. Now that I am here trying to learn OOP I often read how OOP is a "challenge". However, I am wondering how much of this so-called challenge is because the teachers in this part of the business do not know that they must not throw new terminology at students before first defining it, unless they are doing so in order to give the definition? This is really basic stuff in good teaching!
When you do not respect it, you make simple things look hard, and create un-pardonable frustration for students. Here's why. You are trying to make a point with a piece of sample code and the student ends up spending most of the time trying to figure out what all these new terms mean. And, she starts to think that this OOP is really hard stuff. It is a bad idea to put into students' heads when you are cluttering up your sample code with what are in fact word-definition challenges.
So please, if you know of a JAVA book that does not violate this basic principle of good pedagogy please let me know its title. Thanks in advance, and sorry for the rant.