As instructors we work hard at teaching our students why and how to create appropriate abstractions in order to simplify program design and implementation. Interestingly, we sometimes neglect to take advantage of the fact that we can also use abstractions to benefit teaching and learning. In this talk I'll present some examples of useful abstractions that can make computer science concepts more concrete for novices. I'll also discuss the importance of understanding and using languages that provide support for creating abstractions in developing software.
展开▼