12 Mart 2010 Cuma

Daha Performanslı Listeler

Windows Forms uygulamaları geliştiriyorsanız, uzun listeler doldurmak zorunda kalabilirsiniz. Aşağıdaki örnek bir milyon tane rakam üreterek form üzerindeki bir listbox kontrolüne eklemektedir.

Kod çalışırken her yeni bir öğe eklendiğinde işletim sistemi bu öğenin listbox üzerinde yer almasıyla ilgili grafik ve bellek işlemlerini gerçekleştirecektir. Bu da listenin yüklenme süresini uzatacaktır. Eğer kodunuzu aşağıdaki gibi değiştirirseniz, üretilen değerler listeye eklenirken grafik işlemler yapılmaz. Grafik işlemler listbox kontrolünün EndUpdate() metoduyla çalışacaktır. Böylece %50 ye kadar performans artışı sağlayabilirsiniz.
Performans ölçümü için eklenmiş kodlarla birlikte kodun tamamı aşağıdaki gibi olacaktır.

Uygulamanın tamamını aşağıdaki bağlantıdan indirebilirsiniz.

9 Şubat 2010 Salı

Visual Studio 2010 and .NET Framework 4 Release Candidate

Visual Studio 2010 and .NET Framework 4 Release Candidate sürümü herkese açılıyor. 8-9 şubatta sadece MSDN üyelerine açık olan indirme hakkı, 10 Şubattan itibaren herkese açık hale getiriliyor.

İndirmek için aşağıdaki bağlantıyı kullanabilirsiniz.

8 Şubat 2010 Pazartesi

Olaya Dayalı Programlama - Event Driven Programming

Geleneksel yazılım geliştirme yaklaşımlarında, uygulama kodun başlangıcıyla çalışır ve uygulamanın ne zaman ne yapacağına yazılan kod karar verirdi. Zamanla programlama teknolojisi ihtiyaçlar ve kullanıcı talepleri doğrultusunda değişmeye başladı. Özellikle zengin grafik arabirimli işletim sistemlerinin gelmesiyle birlikte kullanıcılar, fare tıklamaları, sürükleyip bırakmalar, liste öğelerini değiştirme, bir resme çift tıklama gibi aksiyonlarının sonucu olarak programların “bir şeyler” yapmalarını beklemeye başladılar.

Devamı için tıklayın...

31 Ocak 2010 Pazar

Nesneye Yönelik Programlama

Nesneye Yönelik Programlama (NYP), günümüzde en yaygın kullanılan programlama yaklaşımlarından biridir. NYP, programcının çözümü geliştirirken problem ve çözüm kümelerini nesneler ve bu nesneler arasındaki ilişkiler olarak tanımlaması ilkesine dayanır.

14 Ocak 2010 Perşembe

LINQ Uygulaması - 101 - Bilgisayarınızdaki Sürücüleri Listeleyin

Bilgisayarımızdaki sürücülere ulaşmak için System.IO isim alanındaki DriveInfo nesnesini kullanabileceğimizi anlatmıştım. Bu örnek kodda da LINQ kullanarak sistemimizdeki sabit diskleri nasıl listeleyebileceğimizi görüyorsunuz.

var diskler = from disk in DriveInfo.GetDrives()
where disk.DriveType == DriveType.Fixed
select new { disk.Name, disk.VolumeLabel };

foreach (var oge in diskler)
{
Console.WriteLine("{0} - {1}", oge.Name, oge.VolumeLabel);
}


13 Ocak 2010 Çarşamba

C# ile Bilgisayarınızdaki Sürücü Bilgilerine Erişin

// Aşağıdaki kod, bilgisayarınızdaki hazır durumda olan sürücüleri (disk, dvd, usb bellek vb. listeler.)

DriveInfo[] suruculer = DriveInfo.GetDrives();
foreach (DriveInfo surucu in suruculer)
{
if (surucu.IsReady) // sürücü hazır mı? (örneğin cd takılı mı?)
{
Console.WriteLine("Sürücü Adı:{0}, {1}, {2}, {3}"
, surucu.Name
, surucu.DriveType
, surucu.DriveFormat
, surucu.VolumeLabel);
}
}


Sürücüler hazır olmasa da isimlerini,ve tip bilgilerini alabilirsiniz.

DriveInfo[] suruculer = DriveInfo.GetDrives();
foreach (DriveInfo surucu in suruculer)
{
Console.WriteLine("{0}, {1}, {2}"
,surucu.Name
,surucu.DriveType
,surucu.IsReady);
}


Bu örnekte C ve D sürücüleri sabit disk, E ve F sürücüleri DVD ve G sürücüsü ise USB bellektir. Her bir sürücüyle ilgili olarak son satırda, sürücülerin hazır olup olmadığı bilgisi verilmektedir.

26 Aralık 2009 Cumartesi

SQL Server - Veritabanından Rastgele Kayıt Seçmek

Aşağıdaki sorgu, [Tablo_Adı] isimli tablodan rastgele 10 tane kayıt getirir.

SELECT TOP 10 [Alan_Adı]
FROM [Tablo_Adı]
ORDER BY NEWID()

6 Aralık 2009 Pazar

INETA NEXT - İstanbul İçin Kayıt Vakti



















İstanbul İçin Kayıt Vakti" sloganını Daron bulmuş. Çok hoşuma gitti ben de başlığımda kullanayım dedim. Eğer halen etkinliğe kayıt olmadıysanız, mutlaka aşağıdaki linkten kayıt olarak yerinizi ayırtın. (Etkinlik tamamen ücretsiz yapılmaktadır.)

30 Kasım 2009 Pazartesi

Imagine Cup Polonya 2010

Zorlu problemlerin teknoloji ile çözüldüğü bir dünya düşle.










Sekiz yıldır yapılan Imagine Cup, günümüzde var olan sorunlara çözümler üretmeye odaklı, dünyanın her yerinden öğrencilerin katıldığı bir teknoloji yarışmasıdır. Yarışma, dünyanın en yetenekli yazılım tasarımcılarını, programcılarını, oyun geliştiricilerini ve dijital medya tutkunlarını günümüzde dünyamızın karşı karşıya olduğu en önemli problemlerinden olan, açlık, fakirlik, eğitim, hastalık önleme, sağlık hizmetleri, doğa ve diğer sorunların üstesinden gelme ve bu konularda çözümler üretme için fırsatlar sunuyor.



24 Kasım 2009 Salı

Visual Basic mi? C Sharp mı?

Hangi .Net programlama dili?

Birçok öğrencim, programlamaya yen başlayacak olanlar ya da bir şekilde yukarıdaki programlama dillerinden biriyle yazılım geliştirmeye başlayanlardan sıkça gelen bir soru bu: “VisualBasic mi daha iyi? Yoksa C# mı? Hangisini tercih etmeliyim?” Böyle bir soru geldiğinde cevabım yine bir soru oluyor: “neye göre? “ ya da “hangi açıdan?”
...
(devamı için tıklayın)