25 Kasım 2020 Çarşamba

C# Erişim Operatörleri ve İfadeleri

      S.A Arkadaşlar,

       Bugünkü yazımızın konusu C# ile erişim operatör ve ifadelerini ele alacağız. Aslına bakıldığında herkesin bildiği bir konu olmasına rağmen özellikle yeni sürümlerin gelmesiyle birlikte bu konularda eksik kaldığımız, kendimizi güncellemediğimiz ifadeler oluyor. Bu yüzden C#'in daha önceki sürümlerinde olan konulara kısaca değinip geçerken sonradan eklenen ya da daha az gördüğümüz operatör ve ifadelere daha fazla odaklanacağız.

20 Eylül 2020 Pazar

Benzer Tip, Fonksiyon, Nesne ve Anahtar Kelimeler

    S.A. Arkadaşlar,
    Bugün bir derleme yazısı ile karşınızda olacağız. Daha önce yazdığımız ne nedir, sonarlint ile kod analizi, yazılımcılar için mülakat soruları gibi derleme yazılarımız olmuştu. Bugün onlara yeni bir tanesini ekleyeceğiz. Diğer yazılarda olduğu gibi bunu da mümkün mertebe güncel tutmaya çalışacağız. Bugünkü yazımız birbirine benzeyen tip, fonksiyon, nesne ve keyword gibi yapıların aralarındaki bazı önemli farkları kısaca açıklamaya çalışacağız. Ayrıca her birinin sonunda konuyu daha ayrıntılı okuyabileceğiniz yazılar da koymaya gayret ettik. Hazırsak başlayalım...

5 Eylül 2020 Cumartesi

Void Metodları Test Etmek

    S.A. Arkadaşlar,
      Bugün yine unit(birim) test ile ilgili bir yazı ile karşınızdayım. Unit testlerden öyle hemen vazgeçmek ya da önemsememek mümkün değil. Zira birim testler çok daha kararlı kod geliştirmemize olanak sağlar hatta bizi SOLID yapılara zorlayan bir yanı da vardır...  

       Daha önce birim testlerle ilgili bir yazı kaleme almıştık, fakat o yazıda daha çok veri kümelerini incelemiştik, bu defa ise void olan metodların nasıl test edileceği üzerinde duracağız. Bunun için bazı yöntemler olsa da malesef void metodları test etmek için sınırlı seçeneklerimiz bulunuyor. Bu yüzden mümkün mertebe kodunuzu düzgün dizayn etmeniz ve test edilebilir metodlar yazmak giderek önem kazanıyor.

22 Ağustos 2020 Cumartesi

Action Func Predicate

    S.A. Arkadaşlar,

    Bugünkü yazımızda Action<T>, Func<TParam,TReturn> ve Predicate<T,bool> yapıları üzerinde durmak istiyoruz. Nedir, neden ve nasıl kullanılır gibi soruların cevabını arayacağız. Aralarında ne gibi farklılıklar ve benzerlikler olduğunu söyleyip yazıyı bitirmeyi düşünüyoruz.

30 Temmuz 2020 Perşembe

in ve out ile Generic Inteface Kullanımı

S.A. Arkadaşlar,
    Bugün generic interface kullanımını ilgilendiren bir yazıyı ele alacağız. Bu yazının çıkış noktası ise önceki yazımızda ele aldığım sonarlint’in verdiği uyarıları çözmek ile ilgiliydi. Burada karşılaştığım bu uyarıyı araştırırken güzel bilgiler öğrendim ve bunları bir yazıda toplamaya karar verdim. 

21 Haziran 2020 Pazar

Sonarlint ile Refactoring

      S.A. Arkadaşlar,
      Bugünkü yazımız statik kod analizi yapan sonarqube alt yapısına bağlanan ve benzer kuralları işleten bir araç olan SonarLint'i inceleyeceğiz. SonarLint microsoft visual studio üzerine kurulan bir extention olup bunu rahatlıkla microsoft visual studio içinde kurabilir veya buradan da indirip kurabilirsiniz. Resmi sitesinde C# ile ilgili yaklaşık 390 kural görünmektedir, fakat biz sadece kendi karşılaştıklarımızı ele alacağız. Bunların bazılarını çözmek biraz daha kolay iken bazılarını çözmek ise biraz vakit alabiliyor. Tüm kurallar için ise buraya göz gezdirebilirsiniz. Karşılaştığım kuralları hangi kritere göre sıralamak konusunda çok düşündüm. En sonunda hata kodlarını küçükten büyüğe sıralamaya karar verdim. Bu yazıyı güncelle tutmaya özen gösterip karşılaştığımız hataları eklemeye devam edeceğiz.

23 Mayıs 2020 Cumartesi

C# 9.0 ile Gelen Yenilikler


    S.A. Arkadaşlar,
    Bugün C#'in en son yayımlanan sürümü olan 9.0 sürümünü ele alacağız. Yapılan yenilikler nelerdir, neler değişmiş onları anlatmaya çalışacağız. Daha önceki sürümlerde olduğu gibi Microsoft yine çok güzel özellikler geliştirmiş, fakat bu sefer veri şekillerini kısaltmak(okunurluk) ve veri şekillerinin değişmezliğine(performans) odaklanmışlar. Bunun yanı sıra fonksiyonel programlamayı anımsatan değişiklikler de var. Tüm bunları elimizden geldiğince incelemeye çalıştık.