dfm in amacı, IDE ile görsel çalışırken, property lere hızlı erişebilmek, mesela left, heigh, top vs gibi. Bu bilgiler dfm değilde pas içinde olsaydı, IDE bunları parse edebilmek ve tekrar yazabilmek için cebelleşir sonunda kitlenirdi
1-2mb lık bir pas olduğunu düşünün, bunun içinde onlarca bileşen vs.
Bunu runtime da yapmak isterseniz, o dfm içinde yazan değerleri, hiyararşiyi, yani parent/owner sıralamalarını pas içerisinde kodla yapmanız gerek. EXE boyutuna her halukârda etkileyecek.Ya dfm e yazılmış yada pas içine kod eklenmiş. Burada bu öenmli değil, önemli olan tasarım, yani neyi neden yaratacaksın? eğer bu 135 tane bileşen visual sa, ve bir formda olacaksa, bunu form yapmak daha mantıklı. runtime da form u create etmek yetecektir, ama 135 component şart a bağlı oluşturulacaksa mecburen runtime da create edilecekler. Ama bu gene kısalaştırılabilinir design time da yapılabilinir.
Programcılık budur işte, yoksa visual icon ları sürükle bırak event lerine çift tıkla, 2 satır kod yaz yada bir yerlerden bulup yapıştırmak değil.
DFM de bir treeview varsa, ve buna designtime da node lar eklendiyse, yablış hatırlamıyorsam bu nodelar dfm de binary olarak saklıanır. Yani her tpersistant class özellikleri dfm de olmaya bilir. Runtime da Treeview ı ceate ettikten sonra, itemları eklemeden, herhangi bir node a erişmeye kalkarsan hata alırsın.
"RegisterClass" Bunu "hatayı gidermek için" kullanırsan, yaptım oldu diyorsan sözüm yok ama bu zihniyet külliyen hatalı kod yazıyorsun demek.