This is equivalent to the class methods in Object Pascal. (.Net implementation would be RemObject oxygen).
However, although class references and, therefore, virtual class methods or seemingly static methods that can access some state at the class level are good there, the original platform is there, I donโt think they make sense for .Net or with#.
I have been using Oxygene for several years, and I never need class references.
Not because I did not know how to use them. In the "original" ObjectPascal platform, the native Delphi, I used them all the time. But because .Net and BCL do not have real support for them, so you have no advantages using them. While platforms like python or native Delphi support them in their libraries.
You obviously don't need a static method, what you want is something that can have state and / or supports inheritance. Thus, either the factory, or, in your case, the designer can also be wonderful.
Robert Giesecke
source share