Agziniza saglik. Ufak bir ipucu, eger cok fazla property olursa veya complex property yapisi olursa, bu sefer map etmesi zaman alabilir. Benim tercihim source generator (Riok.Mapperly).
hocam öncelikle bu detaylı anlatımınız için teşekkürler, yine çok faydalı bir video olmuş. yıllardır üzerinde çalıştığım onlarca projede mümkün mertebe soyutlama yaparak generic yapılar yazdığım için doğal olarak çok sık mapping yapıyorum. ayrıca hali hazırda içinde mapping yapan bir çok kütüphane ile çalışıyorum. fakat benim merak ettiğim şey aslında reflection'ın tarihsel gelişimi. çünkü hatırladığım kadarıyla özellikle .net çatısı geniş bir kitle tarafından benimsenene kadar çoğu insan reflection'a öcü muamelesi yapıyordu mümkün mertebe kaçınmaya çalışıyordu. hatta stackoverflow'un yıllanmış konularında hala daha iinsanların reflection'dan kaçmak için yazığı bazı konular mümkün tabi yıllar içinde bu tutum kayboldu ama ben bunun sebebini merak ediyorum bu konu ile ilgili biraz bu işin tarihsel teknik gelişimini de anlatan bir video çekmeniz mümkün müdür ?
Her şeyin fazlası zarardır diye kıssadan hisse yapabiliriz. Reflection, Type tipinin bellekteki örneğine erişip içindeki detaylara 'RunTime' da ulaştığı için, normal de bir nesne örneğine direkt ulaşmaktan daha 'yavaş' çalışıyor elbette. Ama gerek framework içerisindeki geliştirmeler gerek JIT ve CLR tarafındaki geliştirmeler bu yavaşlığın çok büyük kısmını ortadan kaldırdı. Reflection'ı kullanıp kullanmamak çok önemli değil aslında. Asıl soru ne kadar kullanıyoruz? Uygulamalar ayağa kalkarken tek seferlik çalıştırılanlarda çok problem yaşamayız elbette ama normal de çok daha kolay yapabileceğimiz ve çok sefer çağırılan bir fonksiyon içeriğini reflection'la yapmanın da çok mantığı yoktur diyebiliriz. Eskisine göre çok daha hızlı olan reflection, verimli bir şekilde kullanılırsa çok daha mantıklı bir yaklaşım olacaktır. Artık o kadar süreler hissedilebilir bile değil neredeyse :)