programming etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
programming etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

18 Mayıs 2020 Pazartesi

Integration Test - (.Net Core - xUnit - Web Application Factory)

     S.A. Arkadaşlar,
     Bugün entegrasyon(integration) test konusuna odaklanacağız. Entegrasyon test, birim (unit) testten farklı olarak her bir metodu test etmekten ziyade metodların birbiriyle entegre çalışıp çalışmadığını kontrol eder. Örneğin, birim test yazarken bazı mock'lama objeleri kullanırız. Veri tabanını mock'layıp oradan doğru sonuç dönmüş gibi yaparız, ama entegrasyon test ile "mış" gibi yaptığımız şeyleri gerçekten yapıyoruz. Bunun için de alt yapımızı ayağa kaldırmamız gerekecek. Bunu nasıl mı yapacağız. Buyurun

23 Nisan 2020 Perşembe

Type-Safe Configuration (IOptions - IOptionsMonitor - .Net Core)

      S.A. Arkadaşlar,
      Bugün .NET Core ile uğraşanların genelde bildiği ve kullandığı bir konuyu ele alacağız. Bu konu her ne kadar bilinse de, birlikte bir miktar daha ileriye taşımaya çalışalım.
Bazı değişken bilgilerini genellikle .config dosyası içinde tutmaktayız. Bu dosyayı çoğu zaman development ortamı için ayrı, test ortamında ayrı ve production ortamlarında ayrı tutmaktayız. Tabi ki bu örnekler çoğaltılabilir. Asıl aktarmak isteğim mevzu, config değerleri string olarak tutulduğundan dolayı hataya açık bir durum oluşmaktadır zaman zaman. Gelin hep birlikte bunu type-safe bir yapıya taşıyalım.

16 Nisan 2020 Perşembe

Health Check and Monitoring - .Net Core ( Servislerin Durumunu Kontrol Etme ve Görüntüleme)

     S.A. Arkadaşlar,
     Bugün .net core 2.2 ile gelen ve 3.1 ile olgunlaşan bir kavramı ele alacağız. Dağıtık bir yapınız var ve bunun içinde onlarca belki yüzlerce servis bulunmaktadır. Her bir servis kendi içinde çalışacağı için de hepsini kontrol etmek zor belki imkansız olacaktır. İşte bu ihtiyaçtan meydana çıkmış ve tüm servislerin durumlarını kontrol eden yapıya Health Check denmektedir. Bu yapıyı kullanıcı ara yüzü ile birlikte ayağa kaldıracağız. Hazırsak başlayalım.

11 Nisan 2020 Cumartesi

Birim(Unit) Test ile Veri Kümeleri - xUnit (Inline - Member - Class Data)

    S.A. Arkadaşlar,
    Bugün unit/xunit (birim) test ile bir konuya odaklanmak istedim. Bu konunun amacı, birim test nedir? Neden yazılır? Faydaları nelerdir? vb. gibi bilgiler olmayacak. Odaklanacağımız konu birim testler de çoğu zaman olması gereken girdi değerleri üzerine yoğunlaşacağız. Bazen bir kereye mahsus bir sabit değer, bazen de birden fazla ve farklı değerler girdi ihtiyacı olabilmektedir. Şimdi adım adım olması gerekene doğru ilerlemeye çalışalım, buyurun birlikte ilerleyelim..

16 Şubat 2020 Pazar

IQueryable - IEnumerable

     S.A. Arkadaşlar,
     Bugün birbirine benzeyen yapılarından IQueryable ve IEnumerable kavramlarını incelemeye çalışacağız. İki yapı aynı gibi dursa da birbirinden farkları var. Belki de en bariz olan farkı Burak Selim Hoca burada nokta atışı ile anlatmış, fakat ben genel olarak konuyu ele alıp bulduğum farkları derlemeye çalışacağım.

6 Şubat 2020 Perşembe

Operatörlere Aşırı Yükleme (implicit - explicit)

    S.A. Arkadaşlar,
    Bugün operatörlere aşırı yükleme işlemine göz atacağız. Metodlara aşırı yükleme ile benzer mantıkta olsa da farklı işlemlerdir. Genel kullanımı +, - gibi operatörlere aşırı yükleme yapılır. Normal koşullarda 2 nesne toplanamaz, fakat biz operatörlere aşırı yükleme yaparak artık bu operatörleri istediğimiz gibi kullanabiliyoruz. Burada implicit and explicit diye 2 tür dönüştürme vardır. Implicit aritmetik işlemleri içerir ve veri kaybı olmadığından cast işlemi de gerektirmez. Explicit ise cast işlemi gerektirir, veri kaybı olma ihtimali de vardır.

30 Aralık 2019 Pazartesi

Yazdım da ne oldu ? (100. Yazı - Ustalara Vefa)

     S.A. Arkadaşlar,
     İlk defa teknik olmayan bir yazı yazıyorum. Bunun sebebini başlıktan anlamışsınızdır :) Hem mutluluğumu hem de bana sıkça sorulan "yazıyorsun da ne oluyor veya yazmanın sana katkısı nedir?" gibi soruların cevabını sizlerle paylaşmak. Ayrıca yazmak isteyip de bir türlü başlayamayan arkadaşlara da başlamalarına vesile olur.

8 Eylül 2019 Pazar

Tip Kontrolü (Type Checking)

       S.a. Arkadaşlar,
       Uzun süren bir aradan sonra nihayet gelebildim. İnsan yazmaya alışınca yazmadan edemiyor artık. Ben de not aldığım konulardan biri olan tip kontrolünü ( Type Checking) ele almaya çalışacağım. typeof, GetType, is ve as kavramların inceleyeceğiz. Şahsım adına kullandığım yapıların sadece kullanımını değil; nerelerde ve ne zaman kullanılır, alternatifleri nelerdir gibi soruların cevaplarını bulmaya çalışıyorum. Ortaya çıkan şeyleri de elimden geldiğince paylaşmak istiyorum. Bu da bu şekilde orta çıkan bir yazı oldu.  Bu kısa girişten sonra yazıya başlayalım.

22 Aralık 2018 Cumartesi

Code Simplicity ( Kod Basitliği - 9)

     S.a. Arkadaşlar,
     İlk yazısına 1 Nisan'da başladığımız kod basitliği kitabının nihayet sonuna gelmiş bulunuyoruz. Bu kitaba başlamama vesile olan İbrahim Kürce'ye de buradan bir teşekkürü borç bilirim. Şimdi de kitabı bitirmenin heyecanıyla son yazıyı ele alıyoruz. 9.bölüm olan son yazımızda testi ele alacağız. Ayrıca bu yazımız yılın da son yazısı olacak. Şimdi sizi yazıyla baş başa bırakalım.

9 Aralık 2018 Pazar

Code Simplicity ( Kod Basitliği - 8.2)

    S.a. Arkadaşlar,
    İyiden iyi sona yaklaşıyoruz artık. Tatlı bir heyecan sarmaya başladı beni. Bu yazımızı da tamamladığımızda sadece bir bölüm kalacak, onu da yıl bitmeden tamamlamaya çalışacağım. Bildiğiniz üzere 8.bölümü 2 kısma ayırmıştık. İlk bölümde karmaşıklık ve kötü teknoloji seçiminden bahsetmiştik. Şimdi ise geri kalan konuları işlemeye çalışacağız. Hazırsanız başlayalım.

26 Kasım 2018 Pazartesi

Mvc'de Filtrleme İşlemleri - Attribute Kullanımı - AOP

    S.a. Arkadaşlar,
    Bugünkü yazımız üye yetki kontrolü ile ilgili olacaktır. Bir sisteminiz var ve bu burada bulunan sayfalara herkes giriş yaptığında girebilecek mi, yoksa bazı sayfalara sadece belirlediğiniz kullanıcı tipleri mi erişebilecektir. Eğer böyle bir sisteminiz varsa doğru yere geldiniz. Burada her metodu ayrı ayrı kod yazıp kontrol etmeyeceğiz. Burada devreye attribute'leri devreye sokacağız.

31 Ekim 2018 Çarşamba

Code Simplicity ( Kod Basitliği - 8.1)

    S.a. Arkadaşlar,
    Kod basitliği kitabının artık iyice sonlarına yaklaştık. Şimdiye kadarki tüm yazılarımızda basitliğin üzerinde durduk. Hep olması gerekeni konuştuk, onu uygulamaya çalıştık. Özellikle bir önceki bölümde basitliğin üzerinde iyice durduk. Bu yazımızda basitliğin tersi olan karmaşıklığı ele alacağız. Uzun olmaması için yazıyı yine ikiye ayırıyor olacağız. Hazırsanız başlayalım...

11 Ekim 2018 Perşembe

MVC Sürecinde Karşılaştığım Problemler

     S.a. Arkadaşlar,
     Bir süredir üzerinde çalıştığım projede kullandığımız ASP MVC konusunda yaşadığım kendimce ciddi problemleri ve onları nasıl hangi kaynaklardan çözdüğümü kısaca bir toparlamak istedim. Zaman zaman çok zorlandığım anlar da oldu. Hem lazım olursa tekrardan dönüp bakmak açısından hem de belki başkalarına yardımcı olur düşüncesiyle bu yazıyı yazıyorum.

30 Eylül 2018 Pazar

Code Simplicity ( Kod Basitliği - 7.2)

     S.a. Arkadaşlar,
     Kod basitliği kitabından öğrendiklerimizi yazmaya devam ediyoruz. En son kitabın en önemli konusu olan 7.bölümde kalmıştık. 7.bölüm uzun olduğundan 2 yazıya bölme ihtiyacı doğmuştu. 1.kısmına buradan erişebilirsiniz. Bugün ise 2.kısmını ele alacağız. Hazırsak başlayalım.

16 Eylül 2018 Pazar

Code Simplicity ( Kod Basitliği - 7.1)

     S.a. Arkadaşlar,
     Bildiğiniz gibi kod basitliği kitabını işliyorduk. İlk 6 konuyu her hafta işlemeye özen gösterdim. Yeni iş, yeni proje , yeni teknoloji sebebiyle basitlik yazılarına ara vermek zorunda kalmıştık. Neyse ki pes etmeden tekrar devam etmek nasip oldu. Bugün kitabın 7.konusu olan kitabın temelini oluşturan basitliği işliyoruz. Hem konunun önemi hem de uzunluğu sebebiyle yazıyı 2 parçaya böldük. En yakın zamanda 2.parçasını da yayımlamak dileğiyle. Hazırsanız başlayalım.

4 Haziran 2018 Pazartesi

Code Simplicity ( Kod Basitliği - 6)

S.a. Arkadaşlar,
Kod basitliği kitabının 6.bölümüyle devam ediyoruz. Geçen yazımızda kitabı yarısı geçtiğimizi söylemiştik. Şimdi artık yokuş aşağı iniş başladı diyebiliriz. İnşaallah hayırlısıyla bitirmek de nasip olur. 5.bölümde yazılımdaki değişiklikleri ve 3 kusuru işlemiştik. Bugün ise hatalar ve tasarım başlığını inceleyeceğiz. Hazırsak başlayabiliriz.

13 Mayıs 2018 Pazar

Code Simplicity ( Kod Basitliği - 5)

     S.a. Arkadaşlar,
     Kod basitliği kitabının 5.yazısına başlıyoruz bugün. Bildiğiniz üzere 9 yazılık  bir seri olacaktı. Bu yazıyla yolun yarısını da geçmiş oluyoruz. Seriyi de tamamlarız inşaallah en yakın zamanda. Geçen yazımızda yazılımın geleceği konusunu işlemiştik. Bugün ise yazılımdaki değişiklikleri işleyeceğiz. Kısa bir giriş yaptığımıza göre artık başlayabiliriz.

7 Mayıs 2018 Pazartesi

Delegation Dictionary ile Sınıfları Koşulsuz Çağırma

     S.a. Arkadaşlar,
     Bugünkü yazacağımız konu, kodun düzenlenmesiyle ilgilidir. Farklı sınıfları çağırırken if veya switch case yapısı yerine nasıl bir yöntem izleyebiliriz ona bakacağız. Öncelikle switch case yapısını inceleyeceğiz, daha sonra reflection ile düzenleme yapacağız, en son da delegate dictionary ile kodu düzenleyeceğiz. Aradaki farkı gördükten sonra istediğiniz yapıyı kullanmak size kalmış, fakat sanki tercihiniz belli gibi olacak. Hazırsak başlayalım.

24 Nisan 2018 Salı

Code Simplicity ( Kod Basitliği - 4)

      S.a. Arkadaşlar,
      Bildiğiniz gibi Kod Basitliği kitabını bölüm bölüm inceliyorduk. Geçen yazımızda tasarımın zorluklardan bahsetmiştik. Bugünkü yazımız ise diğer üç yazımıza göre biraz uzun olacaktır. Umarım en keyifli şekilde okursunuz. Bugünkü yazımızın 3 temek başlığı yazılım tasarım denklemi, tasarımın kalitesi ve öngörülmeyen sonuçlardır. Eğer hazırsak başlayalım :)

15 Nisan 2018 Pazar

Code Simplicity ( Kod Basitliği - 3)

     S.a. Arkadaşlar,
     Bildiğiniz gibi Kod Basitliği kitabı yazı serisine başlamıştık. Önceki yazıda kayıp bilimi işlemiştik. Yazılımcının aynı zamanda bir tasarımcı olduğunu ve yazılım bilim ilişkisi üzerinde durmuştuk. Bugün ise 3.bölüm olan yazılım tasarımının zorluklarına değineceğiz. Şimdi kısa bir giriş yaptıktan sonra yazımıza geçebiliriz.