Böyle niş konuları öğrenmek çok keyifli oluyor hocam, teşekkürler.
@TechBuddyTR Жыл бұрын
Teşekkürler :)
@ersinyilmazmuzik Жыл бұрын
Hocam selamlar öncelikle değerli paylaşımın için teşekkür ederim. Benchmark sonuçlarını hesaplarken Calculate methodlarının birisi toplama birisi çarpma işlemi olarak kaldı. İkisinide aynı işlem(çarpma) olarak alındığında aradaki fark daha net gözüküyor. Bendeki sonuçlar aşağıdaki gibi: NonSealedClassBenchmark | 0.4774 ns SealedClassBenchmark | 0.0264 ns Arada yaklaşık 18 kat fark var. Dikkate değer bir fark çıkıyor. Emeğiniz için teşekkür ederim.
@TechBuddyTR Жыл бұрын
Ben de videodan sonra farkettim durumu, değiştirip tekrar test ettim. Benzer sonuçlar çıktı :)
@osmanozturk8838 Жыл бұрын
Çok çok teşekkürler. Kısa net öz bir paylaşım oldu. Faydalandım. Emekleriniz ve zaman ayırdığınız icin tekrar tesekkur ve tebrik ederim.
@TechBuddyTR Жыл бұрын
Teşekkürler :)
@lmcgs Жыл бұрын
Aslında daha fazla abilitysi yani daha fazla şey yapabilme özelliği olan her şey; daha az şey yapabilen şeylere göre daha yavaştır demek çok da yanlış olmaz diye düşünüyorum. Class, sealed class vs'den bağımsız olarak; X ve Y iki farklı yapı düşünelim. Hangisinin daha fazla özelliği varsa; diğeri daha hızlı olacaktır. Mesela Record yapısı da buna bir örnek olabilir. Mutable, immutable yapılar vb. Tabi yavaş veya hızlı olmasından bağımsız olarak; asıl olan doğru şeyi, doğru yerde kullanmaktır.
@azizovnadir Жыл бұрын
Təşəkkürlər hocam
@muhammedaliak5873 Жыл бұрын
Hocam programlamada ilk senem ve her gün, böyle de mi bir şey varmış diye şaşırıyorum :)
@TechBuddyTR Жыл бұрын
Daha neler var neler :)
@muhammedaliak5873 Жыл бұрын
@@TechBuddyTR severek takip ediyorum hocam. Notumu alıyorum, deniyorum deniyorum ta ki yapana kadar. Emeğinize sağlık hocam
@kskteenАй бұрын
Selam 3:12 de söylenenlere ek olarak ; Student referensını gösteren human nesnesi human kodunu,direk referans nesne eşleşmesi olanlar da kendilerine ait olanları çağırır. Virtual da gösterdiği asıl nesne ne ise onu çağırır. public class Program { public static void Main() { Human human=new Human(); human.Talk(); //Human talks Student student=new Student(); student.Talk(); //Student talks Human humanStudent=new Student(); humanStudent.Talk(); //Human talks (Eğer virtual ile override edilseydi Student talks basacaktı.) } } public class Human { public void Talk() { Console.WriteLine("Human talks"); } } public class Student:Human{ public void Talk() { Console.WriteLine("Student talks"); } }
@user-ud6te7di5d Жыл бұрын
NonSealedClass'taki methodu virtual tanımlamasaydık nasıl bir sonuç alırdık?
@TechBuddyTR Жыл бұрын
Muhtemelen çok daha yakın sonuçlar alırdık birçok case de
@rcpsntrk Жыл бұрын
@@TechBuddyTR O zaman hız farkı sealed tan değilde virtualdan kaynaklanmış olmuyor mu?
@TechBuddyTR Жыл бұрын
@@rcpsntrk işin içine inheritance girdiğinde, o virtual metodlar bir şekilde override edildiğinde işin rengi değişirdi. İşte bu tarz durumlar haricince sealed tarafındaki bahsettiğim devirtualization giriyor işin içine.
@dizmans Жыл бұрын
Methodların ikiside çarpma ve virtual olmadığında; NonSealedClassBenchmark | 0.0107 ns | 0.0157 ns | 0.0140 ns | 0.0022 ns SealedClassBenchmark | 0.0253 ns | 0.0319 ns | 0.0467 ns | 0.0000 ns Eğer ki override ihtiyacımız varsa; sealed yapamayız. Sealed yaptığımızıda miras veremeyiz. Birbirinin alternatifi gibi bir durumda olmadığı için bu şekilde karşılaştırılmasının pek bi mantığı yok aslında. Çünkü ben ihtiyaç olmadığında ne sealed yapıyorum, ne virtual. Durup dururken niye virtual yapalım? Niye sealed yapalım? Yada çok büyük bir noktayı gözden kaçırıyorum şuanda :)
@kerimhasanyildirim Жыл бұрын
Helper classlarımızı sealed olarak tanımlamak mantıklı geldi. Bu videoyu izledikten sonra.
@TechBuddyTR Жыл бұрын
Mantıklı
@dankogulsoy Жыл бұрын
Eline sağlık
@TechBuddyTR Жыл бұрын
Teşekkürler :)
@emrahharman3040 Жыл бұрын
Hocam iki class altındaki işlemler farklı oldu. Biri çarpma diğeri toplama. Bunun sonuca etkisi var mıdır?
@TechBuddyTR Жыл бұрын
Çarpma toplamadan bir tık daha karışık bir işlem. Video bittikten sonra farkettim düzelttim fark iyice açıldı 🤣
@E_G_ Жыл бұрын
Güzel bir yayın daha, teşekkür ederiz
@TechBuddyTR Жыл бұрын
Teşekkürler :)
@KiyidakiAsk2024 Жыл бұрын
Galiba Sealed kullanmamaya devam edeceğiz. Güzel video
@TechBuddyTR Жыл бұрын
Kullanabiliyorsak kullanalım :)
@KiyidakiAsk2024 Жыл бұрын
@@TechBuddyTR 🤣🤣
@dizmans Жыл бұрын
Üstat, virtual olduğu için yavaş oluyor büyük ihtimal. Sealed olmasının pek bir önemi yok sanıyorum. Sealed classtan türeme olmuyor, haliyle override ihtimali de olmuyor. Haliyle virtual da olamıyor. Sonuç olarak virtual classa ihtiyacım varsa sealed de kullanamayacağım için..... NonSealedClass da metod virtual olmasa bu kadar fark olmaz diye düşünüyorum. Deneyip tekrar yazarım. Selamlar.
@dizmans Жыл бұрын
Aynen tahmin ettiğim gibi; projeyi sizin repodan indirip, iki metodu da çarpma yaptığımda ve virtualı sildiğimde... Bu teste göre; SEALED olan iki kat DAHA YAVAŞ. NonSealedClassBenchmark | 0.0107 ns | 0.0157 ns | 0.0140 ns | 0.0022 ns SealedClassBenchmark | 0.0253 ns | 0.0319 ns | 0.0467 ns | 0.0000 ns