|
I agree. Clearly the author has a particular aim in mind, which seems to be teaching Ruby and/or Javascript; for a generic, introductory glossary I wouldn't include so much OO terminology; not only is OO quite tricky to grasp, but in some places it artificially limits the definitions, e.g. "The programmer can define more complicated types using classes". I think it's sensible to move definitions like "class", "instance", "instance variable", "method", "object", "member function", "member variable" and "instantiate" to a separate glossary, which can be a bit more in-depth. Other glossaries could then deal with other common-but-more-specialised sub-topics too, like logic (booleans, AND, NOT, short-circuiting, lookup/truth tables, predicates, branches/clauses, etc.), syntax/structure (blocks, tokens, keywords, scope, statements, expressions, modules, namespaces, etc.), and so on. Anecdotally, my first programming language was Python, which I managed to teach myself procedurally. OO only "clicked" for me after a couple of years of undergraduate CS courses, in Java, Python and C. |