Once you have data available in some form (that is, datasets) and you are ready to build a UI-enabled application, you need to find a way to let the user consume this data, modify it through visual controls, and post changes to the original data source. This sounds simple at first, but finding a general approach to solving this problem elegantly and efficiently is far from trivial.
Data may differ in size, kind, or availability. Their visual controls greatly differ, as we have seen in earlier chapters, both in terms of their visual aspects and loading strategies/capabilities. Moreover, you may want to apply some transformations to the data before presenting it to the user (that is, formatting values) and apply some inverse transformation when storing it back in the data source.
Historically, Delphi has shined (and continues to do so today!) at being an effective tool for large data-driven applications, and every experienced Delphi developer should...