Şubat 14, 2010 at 22:20 · Kategori: C#
Merhabalar,
Bugünkü yazımda kısaca dizilerden bahsedeceğim ve çok boyutlu dizilerin C#’da nasıl daha kolay tanımlanabileceğini açıklayacağım.
Diziler içerisinde birçok nesne veya değişken tutmanıza yardımcı olan bilgi yığınlarıdır. Eğer diziler olmasaydı yazacağınız programın büyüklüğüne göre sadece nesneleri tutmak için onlarca satır kod yazmanız gerekebilirdi. Örneğin,
[php]
int bolum1;
int bolum2;
…
int bolum5;
…
int bolum61;
[/php]
gibi uzayıp giden, yazarken de haliyle fazlasıyla sıkılacağımız bir kod yığınıyla karşılaşacaktık. Oysa dizileri kullanarak bu işlemi kolaylıkla gerçekleştirebiliyoruz.
[php] int[] bolum = int[61]; // 1 boyutlu 62 tane değer alabilen bir dizi [/php]
- Diziler her zaman 0(sıfır)’dan başlamaktadır. Eğer 4 değer alabilen bir dizi tanımlamak istiyorsanız, ” int[] bolum = int[3] ” yazmanız gerekiyor.
Çok Boyutlu Dİziler (Multidimensional Arrays)
C#’da birden çok boyutlu dizileri tanımlama C,C++ ve Java gibi dillerden biraz farklılık gösterir. Ancak bu fark işimizi kolaylaştırmamızı sağlamaktadır.

Pratik Yöntem
Eğer C#’da çok boyutlu bir dizi tanımlamak istiyorsanız, yazmanız gereken
[php]int[ , ] dizi2Boyut;
int[ , , ] dizi3Boyut;[/php]
10 Boyutlu bir dizi için,
[php]int[ , , , , , , , , , ] dizi10Boyut;[/php]
Kısaca, n boyutlu bir dizi tanımlamak istiyorsanız parentezin içine n-1 tane virgül koymanız yeterli olacaktır.
[php]int[ , ] dizi2Boyut = new int[5,5];
// 5 x 5 boyutlarında bir dizi, yukarıdaki resimde (sol alt kısımda) görebilirsiniz
int[ , , ] dizi3Boyut = new int[5,5,3];
// 5 x 5 x 3 boyutlarında bir dizi, yukarıdaki resimde(sağ tarafta) görebilirsiniz[/php]
Yazının Devamı
Şubat 5, 2010 at 01:27 · Kategori: C#
Merhabalar,
Uyku sorunu yaşayan biri olarak, bilgisayarda kısmen amaçsızca birşeyler izleyerek(izlediğimi zannederek) uyumayı adet edinmiş biri olarak onun sabaha kadar açık kalmamasına da genellikle özen göstermeye çalışırım. Zira gün içinde teknolojiden uzaklaşamadığımız için uykumuzda birkaç saat de olsa vücudumuzu manyetik alandan kısmen de olsa uzaklaştırmak şart. Bu anlamda Windows 7′yi kullanmaya başlamadan önce bilgisayarımı zaman ayarlı ufak bir programla kapatabiliyordum ancak Windows7′ye geçince bu kullandığım program zaman zaman oturumu sonlandırmayı başaramıyordu ve sabah kalktığımda hata pencereleriyle dolu bir bilgisayarla karşılaşıyordum. Alternatif yeni bir program aramak yerine, nasıl olsa bilgisayar mühendisi olacağız(İnşallah) şu ufak programı da kendimiz yazıp kullanalım diyerekten işe koyuldum. Bir Timer, birkaç button, textbox ve checkbox işimi fazlasıyla gördü…

Kurulum dosyasını indir
Kaynak kodları indir
Şubat 2, 2010 at 21:31 · Kategori: C#, XML
Merhabalar,
Okumak elbette çok önemli bir alışkanlık, ancak özellikle programcılar için bir uygulama ortaya koymak okunan bilgilerin kalıcı olması adına birçok programcı gibi benim için de daha önemli bir role sahip. Bu anlamda bildiğini zannetmek başka şey, bilmek başka şey…

XML’e yeni yeni çalışmaya başladığım şu günlerde ben de bu fikirden yola çıkarak ufak bir uygulama yazmak istedim. Böylece veri kaynağı XML olan bir sözlük yazarak okuduklarımı pekiştirmeye çalıştım. Visual Studio 2008 kullanarak uyguladığım projeyi konunun en alt kısmına eklediğim bağlantıdan indirebilirsiniz. Kodların bir kısmında LINQ to XML yöntemini, bazı kısımlarında ise XPath yöntemini kullandım. Açıkcası böyle birşeye gerek yoktu elbette ancak söylediğim gibi okuduklarımı pekiştirmek adına bu ufak uygulamaya elimden geldiğince bilgi sığdırmaya çalıştım. Kodların tamamını ne yazık ki şu sıralar açıklayacak vaktim yok ancak eğer kodları anlamada sorun yaşayan arkadaşlar olursa bu konu üzerinden yardımcı olmaya çalışacağım. Sözlük, yeni kelime ekleme, kelimeyi düzenleme veya kelime silme gibi bir takım temel özellikleri içinde barındırıyor. Geliştirmek ise size kalmış…
Kaynak kodları indir
Ocak 7, 2010 at 21:54 · Kategori: C#
Merhabalar,
Uykulu ve bir o kadar verimsiz geçen 2 günün ardından 3.gün boş durmak istemedim ve C# ile basit kodlamalar yaparak bildiklerimi hatırlamak için kitaplara ve nete gözatmaya başladım. İtiraf etmeliyim ki bunu yaparken aklıma çok hoşuma giden yeni bir proje fikri geldi. Bunu şimdilik açıklayamayacağım ancak yakın zaman içinde bu projeyi hayırlısıyla gerçekleştirmiş olacağımdan dolayı sizleri de fazla meraklandırmamış olacağım : ) Neyse… Fazla uzatmadan asıl konumuza dönelim.
Bildiğiniz gibi C#’ın DateTime nesnesiyle tarih ve zaman hususunda birçok veriyi projemize aktarabiliyoruz. Ancak varsayalın methodlar görünürde biraz kısıtlı olsa da, dolaylı yoldan gereken herşeyi sağlayabiliyorlar.
Aşağıda DateTime nesnesi için geçerli birçok kalıbı bulabilirsiniz.
0 MM/dd/yyyy 07/21/2010
1 dddd, dd MMMM yyyy Perşembe, 07 Ocak 2010
2 dddd, dd MMMM yyyy HH:mm Perşembe, 07 Ocak 2010 21:40
3 dddd, dd MMMM yyyy hh:mm tt Perşembe, 07 Ocak 2010 09:40
4 dddd, dd MMMM yyyy H:mm Perşembe, 07 Ocak 2010 21:40
5 dddd, dd MMMM yyyy h:mm tt Perşembe, 07 Ocak 2010 9:40
6 dddd, dd MMMM yyyy HH:mm:ss Perşembe, 07 Ocak 2010 09:40:15
7 MM/dd/yyyy HH:mm 07/21/2010 21:40
8 MM/dd/yyyy hh:mm tt 07/21/2010 09:40
9 MM/dd/yyyy H:mm 07/21/2010 21:30
10 MM/dd/yyyy h:mm tt 07/21/2010 9:40
11 MM/dd/yyyy HH:mm:ss 07/21/2010 09:40:15
12 MMMM dd Ocak 22
13 MMMM dd Ocak 22
14 yyyy’-'MM’-'dd’T'HH’:'mm’:'ss.fffffffK 2010-01-07T21:40:46.3359375+02:00
15 yyyy’-'MM’-'dd’T'HH’:'mm’:'ss.fffffffK 07T21:44:12.9638671+02:00
16 ddd, dd MMM yyyy HH’:'mm’:'ss ‘GMT’ Per, 07 Oca 2010 22:06:56 GMT
17 yyyy’-'MM’-'dd’T'HH’:'mm’:'ss 2010-01-07T06:30:15
18 HH:mm 21:30
19 hh:mm tt 21:30 PM
// Saatin bu kısımdan sonra sabah 9.30 olduğunu varsayalım. Zira h:mm saatin başındaki 0′ı göstermeyecektir. Eğer 0′ı görmek istersek hh:mm yazmamız gerekiyor.
20 H:mm 9:30
21 h:mm tt 9:30 AM
22 HH:mm:ss 09:30:15
23 yyyy’-'MM’-'dd HH’:'mm’:'ss’Z’ 2010-01-07 21:30:15Z
24 dddd, dd MMMM yyyy HH:mm:ss Perşembe, 7 Ocak 2010 21:30:15
25 yyyy MMMM 2010 Ocak
Kullanım şekline bir örnek:
DateTime.Now.ToString(“dddd, dd MMMM yyyy HH:mm”);
->Perşembe, 07 Ocak 2010 21:40
Bir başka yazımda görüşmek dileğiyle…