DavidCooper wrote:
What does all that jargon-infested junk mean though?
The jargon is in evidence in the "plain English" version just as much as the C++ version. Functions? Namespaces? Global namespace? Parameters? Constructor? Array of character pointers?
It's just hidden behind lots of noise, like "the" and "with" and "in" and "namespace", making it much harder / slower to read.
Quote:
How would you summarise what it does for someone who doesn't know anything about programming?
Not at all. If you don't "know about programming", you won't be able to make heads or tails out of anything anyway. Because "knowing about programming" isn't about any specific
language, it's about thinking a certain way, be that procedural, object-oriented, functional, generic, or something-else-entirely.
Getting a student's mind set up for organizing data and control flow this way is what takes the bulk of time. Whatever language you're using to express those thoughts is entirely secondary, which is why it's dead easy to switch from one programming language to another if they just follow the same "way of thinking".
Quote:
Why are you programming at such a low level instead of letting the intelligent compiler do that job for you?
Because why are those namespaces taking no parameters? What constructor should the type QApplication call? Why should I, after doing that, create an array of character pointers and pass some argc and argv to that array?
That's not what is meant, of course. But you'll either end up with ambiguity (and confusing error messages), or with a rather large set of "special" rules for your "special" brand of English that is "proper" for programming (i.e., rules for a
programming language).