UNREAL PROPERTY SYSTEM (REFLECTION) Why should I care (my C++ journey begins here)

Hello peeps I have successfully build my first game with blueprints only (see signature), but whether it will be successful it is to be seen.

Anyway, I am familiar with the basics of object oriented programming. Now I am going deeper in the rabbit hole in search of performance so I am starting to learn C++ for my new game.

I am yet in doubt when reading about the UNREAL PROPERTY SYSTEM (REFLECTION).

It is the ability of a program to examine itself at runtime. Can someone give me a scenario where that would be useful or necessary so I can better understand the need for this function.

Thanks!