|
|
|
|
|
by Androsynth
5221 days ago
|
|
The problem with OOP is that its really not something that should be taught to people who are first learning to program. It is extra complexity and doesn't add any value for beginners. That is my problem with Python. C has its disadvantages, but you get: 1-a simple syntax 2-good mental exercises in learning, implementing and debugging pointer based data structures 3-a good idea of what is happening at the processor level when a computer program is being run. You simply don't get that combination in any other language. There are caveats of course: theres the functional vs procedural argument (which is a higher level argument than this). There could also be a good point that OOP should be the very first thing a student should learn, but only if you teach them a smalltalk based language, not python, java, C++ etc. For the context of my argument, I chose: 'for teaching first year CS majors their first procedural programming language, what is the best choice?' |
|
In any case, I think Python is a great procedural language out there for a beginner - you can use the classes as if they were just structs and go a long way with that.