Meraklı bir bilgisayar programcısının notları.

Merhaba! Ben Burak Selim Şenyurt - yazılım geliştirici, blogger ve öğrenme tutkunu.

Bu blogda yazılım mühendisliği, sistem tasarımı, programlama dilleri ve yeni teknolojiler üzerine yazılar paylaşıyorum. Özellikle .NET, Rust, Zig, yapay zeka araçları ve mimari konularına ilgi duyuyorum. Kendimi sürekli geliştirmeye ve yeni şeyler öğrenmeye adıyorum.

Arama · Arşiv


Maceralar

Toplam 1022 yazı Tüm arşiv Arama RSS
  • Tek Fotoluk İpucu–12 (DataTable için Raw XML Formatı)

    Peki elinizde bir DataTable var ve siz bunun Raw XML formatındaki çıktısını istemcilere vermek istiyorsunuz. Ne yaparsınız?

  • Tek Fotoluk İpucu – 11 (Ham XML ve XElement)

    Hani olurda yazdığınız WCF servislerini.Net istemcilerine açarken XML olarak döndürdüğünüz içeriklari RAW formatlarında sunmak istersiniz. Bu durumda yapacağınız iş çok basittir. İşte örnek

  • Tek Fotoluk İpucu – 10 (MessageContract yardımıyla SoapHeader' a Bilgi Eklemek)

    Bu kez de WCF ile ilişkili bir fotoğraf paylaşalım istedim. Aslına bakarsanız iki fotoğrafçık oldu ama idare edin artık. Varsayalım ki SOAP paketlerinizin Header kısmında kendi tanımladığınız tip içeriklerinin yer almasını istiyorsunuz. İşte bunun için aşağıdaki fotoğrafta görülen yolu izleyebilirsiniz

  • Tek Fotoluk İpucu – 9 (Stopwatch ile süre ölçümü)

    Bazen yazdığımız kod parçalarının işlem sürelerini hesaplama ihtiyacı duyarız. Bu anlamda en çok kullanılan yöntemlerden birisi DateTime ve TimeSpan tiplerini ele almakta iken gerçekte en efektif olanı Stopwatch sınıfını değerlendirmektir. Nasıl mı?

  • Tek Fotoluk İpucu - 8 (Parallel ConcurrentBag)

    Concurrent Collections deyince aklımıza Thread-Safe koleksiyon tipleri gelmelidir. Söz gelimi bir ConcurrentBag koleksiyonunun basit kullanımına bir örneği aşağıdaki gibi verebiliriz.

  • Tek Fotoluk İpucu - 7 (Windows Liste Bazlı Kontrolleri ve ToString Metodu)

    WinForms programcılığında sık rastlanan sorunlardan birisi de, kendi özel tiplerimizi liste bazlı kontrollere bağladığımız durumlarda ortaya çıkmaktadır. Acaba liste bazlı kontrolün içeriğini kendimiz nasıl belirleyebiliriz?

  • Tek Fotoluk İpucu - 6 (Fluent Exception Handling)

    Bazen iç içe çağrılarda bulunan metod zincirlerinde herhangibir seviyede meydana gelen Exception durumunu, en üst noktada yakalamak isteriz. Bu durumda balon köpüğü misali bir aşağıdan yukarı yükselen bir mekanizmayı kullanabiliriz. Nasıl mı?

  • Tek Fotoluk İpucu - 5 (Rastgele Sıralı Generic List Koleksiyonu)

    Elinizde List tipinden bir koleksiyon var ve içerisindeki nesnelerden rastgele sırada yeni bir liste kullanmak istiyorsunuz. Ne yaparsınız? İşte cevabı

  • Tek Fotoluk İpucu - 4 (DebuggerBrowsable Niteliği)

    Attribute diyip geçmeyin. Bazıları çalışma zamanında o kadar çok işe yarıyor ki. Örneğin DebuggerBrowsable niteliği. İşte kullanım şekli. Farkı görebiliyor musunuz?

  • Tek Fotoluk İpucu - 3 (Tuple)

    .Net Framework 4.0 ile gelen Tuple tipini duymayan kalmamıştır. Duymak bir yana en büyük sorun ne zaman ve hangi amaçlar ile kullanılabileceğidir. İşte tek fotoluk ipucu serisinin bu günkü konusu. Örnek bir Tuple kullanımı. Metodlardan birden fazla değeri out veya ref ile döndürmek yerine, Tuple tipiyle döndürebiliriz.

  • Tek Fotoluk İpucu - 2 (StackTrace ve Çalışma Zamanı Metod Bilgisi)

    Hani olurda çalışma zamanında (Runtime) o anda yürütülmekte olan metodun bilgilerine kolayca ulaşmak istersiniz. Özellikle loglama sistemlerinde. İşte bu durumda StackTrace tipinden yararlanabilirsiniz. Nasıl mı? Aşağıdaki fotoğrafta (ya da Ercan Hocamızın belirttiği üzere Screen Capture’da) görüldüğü gibi

  • Tek Fotoluk İpucu - 1 (Tek Where ya da n adet Where)

    Bazen bir fotoğraf bin kelimeye bedeldir derler. Bin kelime konusunda şüpheliyim ama bir fotoğrafın anlatım gücü açısından çok önemli katma değerlere sahip olduğuna inanıyorum. İşte size LINQ konusunda performans ipucu verecek bir fotoğraf. Bakalım ben de yarattığı etkiyi siz de yaratacak mı?

  • Composite Cancellations

    Hatırlayacağınız üzere bir önceki yazımızda (Task İptal İşlemlerinin İzlenmesi (Monitoring Cancellation)) Task Cancellation işlemlerinin izlenmesi ile ilişkili teknikleri ve konuları irdelemeye başlamıştık. Bu yazımızda da iptal işlemleri ile ilgili farklı bir konuya değinmeye çalışıyor olacağız. Bu gün kü konumuz Composite Cancellation vakası.

  • Task İptal İşlemlerinin İzlenmesi(Monitoring Cancellation)

    Bu yazımızda daha önceden.Net Framework Beta 1 ve Beta 2 sürümlerinde incelediğimiz Task iptal işlemlerini son sürümde ele alıp toparlamaya çalışıyor olacağız. Task iptal işlemleri oldukça önemli ve üzerinde titizlikle durulması gereken bir konudur. Nitekim bazı hallerde çalıştırılmakta olan Task işlevlerinin iptal edilmesi gerekebilir. Bu iptal işlemi, sistem tarafından her hangibir koşulun gerçeklenmesi sonucu talep edilebileceği gibi, kullanıcı tarafından da uygulatılmak istenebilir.

  • Big Big Big Integer ve Faktöryel Hesaplarken Yüzümde Oluşan Tebessüm

    Monster Truck yarışlarını izleyen var mıdır bilemiyorum. Bir zamanlar Eurosport kanalında sık sık izler ve bu devasa, kocaman araçların, önlerinde ufacık kalan (ki o araçların çoğu avrupada kullanılan binek otoların çoğundan en ve boyca büyüktür) araçların üstünden atlarken onları nasıl ezdiklerine ağzım açık bakardım.

  • Non-Persisted Memory Mapped Files

    Akşam saatleriydi. Sıcak ama güneşin fazla görünmediği bir yaz gününün sonları yaklaşmaktaydı. Gün boyu güneşi İstanbul’ dan saklayan bulutlar yavaş yavaş parçalanmaya başlamıştı. Aralardan güneşin ışınları hafif kızılımsı bir renk ile göğü süslemekteydi. Ancak yine de sert esen rüzgar ve hızla hareket eden bulutlar adeta fırtına öncesi sessizliğin bir habercisiydi. Aile efradı tatildeydi ve çalışma odamda tek başıma dışarıya doğru bakerken geceyi nasıl devam ettirmem gerektiğini planlıyordum.

  • Netspecter Takipte - Object Initializer Deyip Geçmemek Lazım

    Puslu bir sonbahar akşamında detektif Netspecter odasında sessiz sakin oturmaktadır. Loş bir ortama neden olan gece lambasının yeşil cam aksamı altından oda içerisindeki tozların sessiz ve sakin akışı bir yana, Netspecter’ ın kafasında masasına yeni gelen dosya ile ilişkili soru işaretleri koşup durmaktadır.

  • Debug Edilebilir Windows Service Geliştirmek

    Uzun süre önce dış kaynak (Outsource) olarak görev aldığım bir bankacılık uygulamasında Windows Service tabanlı entegrasyon işlemleri için görevlendirilmiştim. Herşeyden önce bu servislerin bankacılık uygulaması olması nedeniyle, farklı ve yabancı sistemleri de ilgilendiren iş adımları bulunmaktaydı. Bu sebepten söz konusu Windows Service uygulamalarının hem kod içerikleri hem de iş kuralları oldukça karışık olabiliyordu. İlgili Windows Service örneklerinin geliştirilmesi bir yana, bunların test ortamına atılması ve sonuçlarının takip edilmesi ise başlı başına bir dertti

  • Netspecter Abstract Class Peşinde

    Yağmur şiddetini giderek arttırıyordu. Karanlık ara sokakta gizemli bir pardesü ise ağır ağır ilerlemekteydi. Etraftaki pis kokunun hemen sokağın başındaki çöp konteynerlerinden geldiği ap açık ortadaydı. Ancak gizemli pardesü bu kokuyu umursamıyordu bile. Bir an durdu ve şüpheli bir şekilde arkasına baktı.

  • Entity Framework Üzerinde TransactionScope Kullanımı

    Günlerden Salı, sonbahar. Neredeyse hiç uyumadan geçen bir gecenin ardından sabaha karşı yorgunluktan sızan Netspecter, CAD’ in baş ucunda dakikalarca miyavlaması sonucu ancak kendine gelebilir. Eksi ve köhne divanı, o doğrulurken olabildiğince haykırarak gıcırdamaktadır. Önce terliklerini arar. Oda darma dağınıktır. Tüm gece kütüphanedeki sayısız kitabı indirmiş ve bir sonuç bulmak için saatlerce araştırma yapmıştır. Sonuçta terliğin tekinin dahi bulunamadığı bir kalabalık kitap yığınıdır.