Why is `scope` planned for deprecation?

via Digitalmars-d digitalmars-d at puremagic.com
Sat Nov 22 04:29:54 PST 2014


On Friday, 21 November 2014 at 16:07:20 UTC, Abdulhaq wrote:
> Hear, hear. One of the problems with many introductions to 
> OOP-paradigmed languages such as C++ is that by having to spend 
> a lot of time explaining how to implement inheritance, the 
> novice reader thinks that OOP is the 'right' approach to 
> solving many problems when in fact other techniques ('prefer 
> composition over inheritance' springs to mind) are far more 
> appropriate. This is one of the primary problems I find in code 
> of even more experienced programmers.

Yes, the problem is that you should not teach OOP, but object 
oriented analysis and object oriented modelling in a language 
agnostic fashion… but you need to touch both structured and 
object oriented programming first to create motivation in the 
student for learning analysis and modelling…

The same goes for performance and complexity. You should only 
cover structured programming/abstraction in the first programming 
course with no hindsight to performance, then touch performance 
and algorithmic complexity in the second course, then do 
complexity proofs in an advanced course.

If a single course cover too much ground students get confused, 
the learning goals become hazy and you loose half your audience.


More information about the Digitalmars-d mailing list