In this chapter, we have looked into three concepts that are important to an everyday Delphi programmer but didn't find their place anywhere else in this book.
The first part of this chapter discussed the idea of programming with exceptions. We saw why exceptions were introduced to modern languages, how they should be used, and how they can be abused. We also saw how exceptions should be correctly handled in the code and what alternatives are available if we don't want to use them.
The second part discussed the debugging process. As this is a highly abstract topic, this book could only give some advice and hints that could improve that part of your programming.
The final part of this chapter focused on functional programming. This programming paradigm cannot be directly transplanted to the Delphi language, but we can still use some concepts from functional programming, such as data immutability and high-order functions, to create programs that are simple to write and to maintain.