RTTI to the rescue – configuring your class at runtime
Since Delphi 2010, the Delphi RTTI has been greatly expanded. Now it is comparable to what is called Reflection in other languages such as C# or Java. A much-improved RTTI can dramatically change the way you write, or even think about, your code and your architecture. Now, it is possible to write highly flexible code without too much effort.
Getting ready
What we want to do in this recipe is dynamically create a class looking for it by name among the classes that have been linked in the executable (or loaded from dynamic packages). The goal is to change the behavior of the program using only an external file without relying on a lot of parameters and complex configuration code; just create the right class. Wonderful!
Let's say you've developed a program to do orders. Your program allows only one-line orders, so you cannot buy different things in the same orders (this is a sample, man!). The form is shown in this screenshot...