Kodla Saçmalamaca 18 Temmuz 2012 Burak-Selim-Senyurt C# Lafı fazla uzatmadan felsefemizi örnek bir fikir ile ilişkilendirip ilerlemeye çalışalım. Örneğin geliştireceğiniz Freelance uygulamalarınızda sıklıkla kullandığınız ama aslında dünya bakış açısına göre çok uzun bir zaman boyunca sabit kalan belirli veri içeriklerine ihtiyacınız oldu. Ülke adları, kodları, telefon alan kodları vb…Karar verdiniz ve dediniz ki, [Daha fazla]
Levenshtein Distance Algoritması 02 Temmuz 2012 Burak-Selim-Senyurt Algoritma, C#, Data Structures, Algorithms Aslına bakarsanız bilgisayar bilimlerinde uygulanabilen, gerçekten çok işe yarayan ve onları keşfedenleri saygıyla hatırlamamız gereken algoritmalar mevcut. Örneğin bunlardan birisi olan Levenshtein Distance algoritması ve mucidi Vladimir Levenshtein Winking smile... [Daha fazla]
Çerezlik Algoritmalar ve Extension Methodlar 08 Haziran 2012 Burak-Selim-Senyurt C#, Data Structures, Algorithms Pek tabi yazılım dünyası söz konusu olduğunda var olan hemen her algoritmanın karşılığı olan kodlamaların geliştirilmesi de önemli bir mevzudur. Bilimsel uygulamalarda, finansal model çözümlerinde, endusturi alanındaki planlama tekniklerinde vb...Ben bu yazımda sizleri o karmaşık ve anlaşılması zor algoritmalar ile yormayacağım. Bunun yerine eğilenceli sayılabilecek ve özellikle oyun programlamada oyunculara keyifli dakikalar yaşatmanızı sağlayabilecek basit bir kaç algoritma üzerinde durmaya çalışacağım. Söz konusu algoritmaları birer Extension Method olarak geliştireceğiz(Extension Method kavramını hatırlayalım. C# 3.0 - Derinlemesine Extension Method Kavramı) Dilerseniz hiç vakit kaybetmeden ilk algoritmamız ile işe başlayalım. [Daha fazla]
Tek Fotoluk İpucu-46(LINQ Aggregate Fonksiyonları) 05 Şubat 2012 Burak-Selim-Senyurt C#, Tek Fotoluk Ipucu Merhaba Arkadaşlar, LINQ tarafında Sum,Max,Min,Average gibi bazı hesaplama fonksiyonları vardır. Bunlara ait örnek bir kullanımı aşağıda bulabilirsiniz Aggregation.rar (22,75 kb)
Priority Queue Collection 31 Ocak 2012 Burak-Selim-Senyurt C# Temel olarak bu tip bir koleksiyon Queue(FIFO - First In First Out ilkesine göre çalışmaktadır) ve Stack(LIFO - Last in First Out ilkesine göre çalışmaktadır) tipinden olanlarına benzer. Bu tip koleksiyonlar(generic karşılıkları da dahil olmak üzere), bildiğiniz gibi tek boyutludur. [Daha fazla]
Binary Search Tree' yi Anlamak 09 Ocak 2012 Burak-Selim-Senyurt Algoritma, C#, Data Structures, Algorithms İkili ağaç yapısı basitliği ve hızlı sonuç üretimi açısından bakıldığında, arama algoritmalarından tutunda oyun programlamaya, ilişkisel veri tabanlarından, karmaşık matematik modellere kadar pek çok alanda kullanılmaktadır... [Daha fazla]
Tek Fotoluk İpucu-45(NumPad Yapalım) 03 Ocak 2012 Burak-Selim-Senyurt C#, Tek Fotoluk Ipucu, Windows Forms Merhaba Arkadaşlar, Diyelim ki Windows Forms programlama ile ilgileniyorsunuz. Çalışma zamanında bileşen üretilmesini öğrendiniz. Form' lar arası geçişleri biliyorsunuz ve öğrendiklerinizi tatbik etmek niyetindesiniz. Hatta Extension Method kavramını da biliyorsunuz hat... [Daha fazla]
Tek Fotoluk İpucu-44 (Mail Adresi Doğru mu?) 02 Ocak 2012 Burak-Selim-Senyurt C#, Tek Fotoluk Ipucu Merhaba Arkadaşlar, Aslında bu soruya cevap vermek özellikle web developer' lar için son derece kolay. RegularExpressionValidator kontrolünde uygun deseni seçip kontole hatalı mail adresi girilmesi engellenebilir. Ama yine de bazen tedbiri elden bırakmamakta yarar vardır. S&... [Daha fazla]
Tek Fotoluk İpucu-43(Active Directory Connection String Bilgisini Almak) 05 Aralık 2011 Burak-Selim-Senyurt C#, Tek Fotoluk Ipucu Merhaba Arkadaşlar, Oldu da domain üzerinde çalışırken Active Directory' nin bağlantı bilgisine ihtiyaç duydunuz? Bu özellikle AD ile .Net tarafında çalışırken size gerekli olan önemli bir bilgidir. Nasıl mı elde edebiliriz? Aslında basit bir teknik var. Garantis... [Daha fazla]
Tek Fotoluk İpucu-42(ExecuteQuery ile Injection' dan Korunmak) 26 Kasım 2011 Burak-Selim-Senyurt C#, LINQ to SQL, Tek Fotoluk Ipucu Merhaba Arkadaşlar, LINQ to SQL kullandığımız durumlarda bildiğiniz gibi dışarıdan SQL sorgularını da icra ettirebilmekteyiz. Bu amaçla DataContext tipinin ExecuteQuery metodu kullanılmakta. Ancak özellikle SQL Injection saldırılarına karşı dikkatli olmamız gerekiyor. Bu nedenle sö... [Daha fazla]
Tek Fotoluk İpucu-41(Let Keyword) 21 Kasım 2011 Burak-Selim-Senyurt C#, Tek Fotoluk Ipucu Merhaba Arkadaşlar, LINQ sorgularını pek çoğumuz etkin bir şekilde kullanıyoruzdur. Ama belki aralarda atladığımız keyword' ler de vardır. Mesela Let. Çık sık kullanmasakta oldukça işimize yarayan bir anahtar kelimedir. Söz gelimi onu bir ifadeye eşitleyip LINQ sorgusunun ... [Daha fazla]
Tek Fotoluk İpucu-40(Sebze Çorbası) 16 Kasım 2011 Burak-Selim-Senyurt C#, Tek Fotoluk Ipucu Merhaba Arkadaşlar, Hani böyle annemiz zamanında içinde yok yok dedirtecek türden çorbalar yapmıştır. Her çeşit sebzenin konulduğu Hah işte bu fotoğrafta ona benziyor. İçinde generic mimari var, reflection var, dynamic tip kullanımı var Olay gayet basit. &Cce... [Daha fazla]
Tek Fotoluk İpucu-39(Dynamic Delegate Üretmek) 14 Kasım 2011 Burak-Selim-Senyurt C#, Tek Fotoluk Ipucu Merhaba Arkadaşlar, Bazen çalışma zamanına ilişkin yapmamız gereken atraksiyonlar olur. Söz gelimi çalışma zamanında bir delegate tipinin dinamik olarak üretilmesini ve yürütülmesini isteyebiliriz? Peki bu nasıl olacak? İşin içerisine birazcık Reflectio... [Daha fazla]
Tek Fotoluk İpucu-38(Delegate Chain) 13 Kasım 2011 Burak-Selim-Senyurt C#, Tek Fotoluk Ipucu Merhaba Arkadaşlar, Arada sırada temelleri de hatırlamak gerekir değil mi? Söz gelimi bir delegate zincirini nasıl kurar ve aynı parametreler için nasıl çalıştırırsınız? İşte size örnek DelegateChain.rar (22,77 kb)
SSIS - Programatik Olarak Variable Değeri Set Etmek 11 Kasım 2011 Burak-Selim-Senyurt C# Ne varki bu ham veri içeriklerinin operasyonel düzeyde ele alınabilmeleri için ilişkisel hale getirilmeleri, bir başka deyişle SQL Server gibi ilişkisel veritabanı ortamlarına aktarılmarı gerekmektedir. Pek tabi tersi bir durumda çoğu zaman söz konusu olmaktadır. Bu gibi ihtiyaçlar dahilinde SSIS(Sql Server Integration Services) paketleri oldukça kullanışlıdır. Özellikle bir tasarım aracının söz konusu olması, zengin kontrol seti ve akış bazlı çalışma modeli önemli avantajlar olarak karşımıza çıkmaktadır. [Daha fazla]
Tek Fotoluk İpucu-37(Faydalı Interface Tiplerinden IComparer<T>) 05 Kasım 2011 Burak-Selim-Senyurt C#, Tek Fotoluk Ipucu Merhaba Arkadaşlar, .Net içerisinde pek çok faydalı Interface tipi bulunmaktadır. Örneğin kendi tiplerinizin sıralama işlemlerini öğrenebilmesi için kullanabileceğimiz IComparer<T>. Nasıl kullanıldığını merak ediyor musunuz? İşte size basit bir fotoğraf Sort... [Daha fazla]
Tek Fotoluk İpucu-36(Config Dosyasına Kolay Ulaşım) 24 Ekim 2011 Burak-Selim-Senyurt C#, Tek Fotoluk Ipucu Merhaba Arkadaşlar, .Net Framework 2.0 ile birlikte gelen Configuration API' sini hepimiz biliyoruzdur. Bu API sayesinde config dosya içeriklerinin Managed karşılıkları olan tiplere ulaşmamız son derece kolay. Aslına bakarsanız pek çok uygulamada config dosyası içerisinde Conne... [Daha fazla]
Tek Fotoluk İpucu-35(DeflateStream ile Sıkıştırmak) 21 Ekim 2011 Burak-Selim-Senyurt C#, Tek Fotoluk Ipucu Merhaba Arkadaşlar, Diyelim ki uygulama içerisinde kullandığınız büyük boyutlu bir byte dizisi var. Aslında bu diziyi bellek üzerinde sıkıştırarak daha az yer tutacak şekilde de kullanma şansınız olabilir. DelfateStream tipi bu anlmada işinize yarayacak Compress ve Decompress ... [Daha fazla]
Tek Fotoluk İpucu-34(Güncel Process için Bellek Bilgileri) 18 Ekim 2011 Burak-Selim-Senyurt C#, Tek Fotoluk Ipucu Merhaba Arkadaşlar, Çalıştırdığımız .Net tabanlı uygulamaların anlık bellek tüketimlerini kod içerisinden ölçümlemek ve hatta loglamak iyi bir fikir olabilir. Hatta bu çıktıyı XML formatında dış dünyaya da sunabiliriz. Basit anlamda aşağıdaki fotoğraf... [Daha fazla]
Tek Fotoluk İpucu-33(Xml Cast) 10 Ekim 2011 Burak-Selim-Senyurt C#, Tek Fotoluk Ipucu Merhaba Arkadaşlar, Varsayalım ki elimizde kendi geliştirdiğimiz tipler ve kullandığımız List koleksiyonları var. Ve olduda bir yerde bu koleksiyonların içeriklerinin XML çıktılarına ihtiyaç duyduk. Basit bir Extension method geliştirebilir miyiz acaba? ListExtensions.rar (... [Daha fazla]
Tek Fotoluk İpucu-32(Environment Verisini XML Olarak Sunmak) 22 Eylül 2011 Burak-Selim-Senyurt C#, Tek Fotoluk Ipucu Merhaba Arkadaşlar, System.Environment tipi içerisinde son derece yararlı ortam bilgileri bulunmaktadır. Bu bilgileri elde etmek son derece kolaydır. Hatta dilerseniz bunları XML formatında dış dünyaya sunabilirsinizde. Nasıl mı? EnvironmentExtensions.rar (22,66 kb)
Tek Fotoluk İpucu-31(Hashing) 18 Eylül 2011 Burak-Selim-Senyurt C#, Tek Fotoluk Ipucu Merhaba Arkadaşlar, Hiç bir zaman kullanıcılarımıza ait şifreleri açık formatta saklamamamız gerekir. En basit anlamda söz konusu verileri Hash' leyerek tutmak en doğrusudur. Bu anlamda .Net tarafında kullanımı son derece basit olan Hash algoritma tipleri mevcuttur. Nasıl kullanı... [Daha fazla]
Tek Fotoluk İpucu-29 (Ne Kadar TextBox Varsa) 26 Ağustos 2011 Burak-Selim-Senyurt C#, Tek Fotoluk Ipucu, Windows Forms Merhaba Arkadaşlar, Kaliteli kod yazmak için aslında biraz titiz düşünmek gerekir. Söz gelimi bir Windows programlamada bir Container kontrol içerisindeki tüm TextBox' ların içeriğini temizlemek istediğiniz bir durumda nasıl kodlama yaparsınız? İşin iç... [Daha fazla]
Tek Fotoluk İpucu-28(Bir Klasörün Yaklaşık Toplam Boyutunu Bulmak) 24 Ağustos 2011 Burak-Selim-Senyurt C#, Tek Fotoluk Ipucu Merhaba Arkadaşlar, Bir klasörün tüm içeriğinin toplam boyutunu öğrenmek isteyebiliriz. Bunun için DirectoryInfo tipine bir ExtensionMethod eklersek de güzel olur. Hatta bu metodun alt klasörleri de gezebilmesi için Recursive olarak yazılması da ge... [Daha fazla]
Tek Fotoluk İpucu-27(FileInfo Bilgisinin Tamamını İndirmek) 22 Ağustos 2011 Burak-Selim-Senyurt C#, Tek Fotoluk Ipucu Merhaba Arkadaşlar, FileInfo tipi yardımıyla bir dosyanın pek çok özelliğine erişebiliriz bildiğiniz üzere. Peki tüm bu bilgileri tek bir String içerisinde toplamak ister misiniz? Söz gelimi loglamalarda bu oldukça işe yarayabilir. Hatta bunu bir Extension m... [Daha fazla]