Delphi Managed Records - Making your code smart
With Delphi 10.4, Managed Records language feature was introduced. As some might remember, it was originally intended for Delphi 10.3, but Embarcadero decided to postpone the feature, to ensure a solid implementation - and now we have it!
Managed Records opens up many new possibilities to write smarter and more effective code without syntactic sugar and bloat which other popular languages suffer from. This is one of the many reasons I keep using Delphi - the language is simple, yet powerful and allows you to eloquently write software.
Writing software is after all an art, just like writing a novel.
Anyways, back to the actual topic - Managed Records.
In this article, I want to share a little clever tidbit you can use the automatic initalization and finalisation calls of Managed Records.
INI files is still one of the easiest ways to have a key-value settings storage across platforms, and usually it takes some legwork to create the object, read or write your settings and ensuring the object is destroyed again.
What if you could access the INI Read or Write features right away and don't worry about keeping track of the object life-cycle?
- Managed Records to the rescue!
In a recent feedback tool I've been working on for another client project, I had the need to save and load a few settings throughout the application.
I figured I didn't want to do the classic create object, do my operation in a try-finally block and close down the object again and thought that Managed Records automatic initialization and finalization should be able to do the trick.