Python Kod

  1. Anasayfa
  2. »
  3. Genel
  4. »
  5. C# Kodları

C# Kodları

admin admin - - 24 dk okuma süresi
57 0

Bu makalede, C# programlama dili ile ilgili temel kodlar ve örnekler üzerinde durulmaktadır. C# dilinin syntax yapısı ve temel kavramları hakkında bilgi sahibi olmak, yazılım geliştirme sürecinde büyük bir avantaj sağlar. İşte C# kodlarını anlamak ve kullanmak için bilmeniz gereken bazı temel kodlar ve örnekler.

1. Değişken Tanımlama: C# dilinde değişkenlerin nasıl tanımlandığını bilmek önemlidir. Değişkenler bir veriyi saklamak için kullanılır ve farklı veri tiplerine sahip olabilir. İşte bir değişken tanımlama örneği:

int sayi = 10;string isim = "Ahmet";double ondalikliSayi = 3.14;

2. Koşul İfadeleri: C# dilinde koşul ifadeleri, belirli bir şartın doğru veya yanlış olmasına bağlı olarak belirli bir kod bloğunun çalıştırılmasını sağlar. İşte bir if-else bloğu örneği:

int yas = 20;if (yas >= 18){    Console.WriteLine("Ehliyet alabilirsiniz");}else{    Console.WriteLine("Ehliyet alamazsınız");}

3. Döngüler: Döngüler, belirli bir işlemi tekrarlayan kod bloklarıdır. C# dilinde yaygın olarak kullanılan döngüler for, while ve do-while döngüleridir. İşte bir for döngüsü örneği:

for (int i = 0; i < 5; i++){    Console.WriteLine("Merhaba Dünya");}

Bu temel C# kodları ve örnekleri, dilin temel yapılarını anlamanıza yardımcı olacaktır. Daha karmaşık projelerde ve kodlarda kullanılırlar, bu yüzden C# öğrenmeye başlayanlar için önemlidir. Bu makalede ele alınacak diğer konular arasında diziler, sınıflar, miras alma ve istisna yönetimi de bulunmaktadır.

Veri Türleri

Bu makalede, C# programlama dilinde kullanılan veri tipleri ve bu tiplerin nasıl tanımlandığı hakkında bilgilere yer verilmektedir. C# dilinde farklı veri tipleri bulunmakta ve her biri belirli bir amaca hizmet etmektedir. İşte C# dilinde sıkça kullanılan bazı veri tipleri:

  • Tam sayılar: int, long, short gibi tipler, pozitif ve negatif tam sayı değerlerini temsil etmek için kullanılır.
  • Ondalık sayılar: float, double gibi tipler, ondalık değerleri temsil etmek için kullanılır. float tipi tek noktalı ondalık sayıları, double tipi ise çift noktalı ondalık sayıları temsil eder.
  • Karakterler: char tipi, tek bir karakteri temsil etmek için kullanılır. Bir karakteri tek tırnak içinde tanımlarız. Örneğin, 'A' veya '7' gibi.
  • Metin dizileri: string tipi, metinleri temsil etmek için kullanılır. Bir metni çift tırnak içinde tanımlarız. Örneğin, "Merhaba Dünya!" gibi.
  • Boolean: bool tipi, doğru veya yanlış değerlerini temsil etmek için kullanılır. Yani bir ifadenin doğru olup olmadığını kontrol etmek için kullanabiliriz.

Ayrıca, kullanıcıya özel veri tipleri de tanımlanabilir. Bu veri tipleri, belirli bir amaç için kullanılan ve daha karmaşık yapılara sahip olan tiplerdir. Örneğin, bir ürünün özelliklerini tutmak için kullanabileceğimiz bir Product adında bir sınıf tanımlayabiliriz. Bu sınıf, ürünün adı, fiyatı, stoku gibi bilgileri içerebilir.C# dilinde veri tiplerinin nasıl tanımlanacağını öğrendikten sonra, bu tipleri kullanarak programlarınızı daha etkileyici ve işlevsel hale getirebilirsiniz. Veri tipleri, programlama dillerinin temel yapı taşlarından biridir ve herhangi bir programlama dilinde başarılı olmak için bu konuya hakim olmanız önemlidir.

Koşullu İfadeler

=C# dilinde koşullu ifadeler, programın belirli bir koşula göre farklı davranışlar sergilemesini sağlar. Bu ifadeler sayesinde program akışı kontrol edilir ve farklı durumlara göre işlemler gerçekleştirilir. C# dilinde en sık kullanılan koşullu ifade yapısı if-else ve switch-case yapılarıdır.

if-else yapısı, belirli bir koşulun doğru olup olmadığını kontrol eder. Eğer koşul doğru ise if bloğu çalıştırılır, aksi halde else bloğu çalıştırılır. İfadenin genel formatı aşağıdaki gibi olabilir:

Kod Açıklama
if (koşul)
      {          // koşul doğru ise çalışacak kod bloğu      }      
else
      {          // koşul yanlış ise çalışacak kod bloğu      }      

switch-case yapısı, belirli bir değişkenin değerine göre farklı davranışların belirlendiği bir yapıdır. Değişkenin değeri, case bloklarında kontrol edilir ve ilgili case bloğu ile eşleşen kod bloğu çalıştırılır. Eğer hiçbir case ile eşleşme sağlanmazsa default bloğu çalıştırılır. İfadenin genel formatı aşağıdaki gibi olabilir:

Kod Açıklama
switch (değişken)
      {          case değer1:              // değer1 kontrolüne göre çalışacak kod bloğu              break;          case değer2:              // değer2 kontrolüne göre çalışacak kod bloğu              break;          default:              // hiçbir değere uymayan durum için çalışacak kod bloğu              break;      }      

Bu koşullu ifade yapıları, C# programlamada çok sık kullanılır ve programların farklı şartlara göre farklı sonuçlar üretebilmesini sağlar. Doğru bir şekilde kullanıldığında programların akış kontrolü ve kullanıcı girişlerine göre uygun işlemleri gerçekleştirmeleri sağlanır.

Döngüler

=C# programlama dilinde farklı döngü yapılarının kullanımı oldukça önemlidir. Bu yapılar, belirli bir işlemi tekrarlamak veya koşulları kontrol etmek için kullanılır. C# programlamada en yaygın kullanılan döngü yapıları şunlardır: for, while ve do-while.

For döngüsü: Belirli bir işlemi belli bir sayıda tekrarlamak için kullanılan bir döngüdür. Genellikle bir sayaç kullanarak belirli bir aralıktaki değerleri kontrol etmek için kullanılır. İşte basit bir örnek:

for (int i = 0; i < 10; i++){   Console.WriteLine(i);}

Bu örnekte for döngüsü, 0'dan 9'a kadar olan sayıları ekrana yazdıracaktır.

While döngüsü: Bir koşul sağlandığı sürece belirli bir işlemi tekrarlamak için kullanılan bir döngüdür. While döngüsü öncesinde koşul kontrol edilir ve eğer koşul doğruysa döngü bloğu içerisindeki işlemler gerçekleştirilir. İşte bir örnek:

int sayi = 0;while (sayi < 5){   Console.WriteLine(sayi);   sayi++;}

Bu örnekte while döngüsü, sayi değişkeni 5'ten küçük olduğu sürece sayıyı ekrana yazdıracaktır.

Do-while döngüsü: Bir koşul sağlandığı sürece belirli bir işlemi tekrarlamaya devam etmek için kullanılan bir döngüdür. Do-while döngüsü, döngü bloğunu en az bir kez çalıştırır ve ardından koşul kontrol edilir. İşte bir örnek:

int j = 0;do{   Console.WriteLine(j);   j++;}while (j < 3);

Bu örnekte do-while döngüsü, j değişkeni 3'ten küçük olduğu sürece j'yi ekrana yazdıracaktır.

Özetle, C# programlama dilinde döngüler, belirli işlemleri tekrarlamak veya koşulları kontrol etmek için kullanılan yapılar olarak önemlidir. For, while ve do-while döngüleri farklı senaryolarda kullanılabilir ve programların istenilen şekilde çalışmasını sağlayabilir.

Foreach Döngüsü

=C# dilinde foreach döngüsü, bir koleksiyon içerisindeki elemanları tek tek dolaşmak için kullanılan bir yapıdır. Bu döngü, koleksiyondaki her bir elemanı alır ve o elemanla ilgili işlemleri gerçekleştirir. Bu sayede, koleksiyon içerisinde gezinirken her bir elemanın üzerinde ayrı ayrı işlemler yapabiliriz.

Koleksiyon veri tipleri, C# dilinde çok sık kullanılan ve birden fazla veriyi bir arada tutmamıza olanak sağlayan veri tipleridir. Örnek olarak, diziler, listeler ve sözlükler bu koleksiyon tiplerine örnek olarak verilebilir. Foreach döngüsü genellikle bu koleksiyon veri tipleri ile birlikte kullanılır.

Örneğin, bir dizi içerisindeki elemanları tek tek kontrol etmek ve işlem yapmak istediğimizde foreach döngüsü kullanabiliriz. Dizide bulunan her bir eleman, döngünün her bir döneminde tanımlanan bir değişkene atanır ve bu değişken üzerinden elemana erişim sağlanır. Bu şekilde, koleksiyon içerisindeki elemanları tek tek kontrol etmek ve işlem yapmak oldukça kolay hale gelir.

Foreach döngüsüyle birlikte, koleksiyon içerisindeki her bir elemanın üzerinde dolaşabildiğimiz gibi, koleksiyonun indeksine, elemanının değerine veya her ikisine birden erişebiliriz. Bu sayede, koleksiyonu istediğimiz şekilde kullanabilir ve üzerinde değişiklikler yapabiliriz.

Özel Döngü Kontrol Komutları

Özel döngü kontrol komutları, C# dilinde döngülerin akışını kontrol etmek için kullanılan işaretlerdir. Bu komutlar arasında break, continue ve goto bulunmaktadır.

break komutu, bir döngüyü aniden sonlandırmak için kullanılır. Eğer bir döngü içerisinde belirli bir koşul gerçekleştiğinde döngüden çıkmak istiyorsak, break komutunu kullanabiliriz. Böylece döngüden çıkıldıktan sonra program akışı, döngü sonrası kodlarla devam eder.

continue komutu ise döngünün bir adımını atlamak için kullanılır. Özellikle bir döngü içerisinde belirli bir koşul gerçekleştiğinde o adımı atlamak ve sonraki adıma geçmek istediğimizde continue komutunu kullanabiliriz. Böylece döngü içerisindeki kodlar devam eder ve atlanan adım işlenmez.

goto komutu ise programın belirli bir noktaya atlaması için kullanılır. Döngülerin içerisinde veya başka bir yerde belirli bir etikete atlayarak programın akışını kontrol etmek istediğimizde goto komutunu kullanabiliriz. Ancak goto komutunun yanlış kullanımı, kodun okunabilirliğini azaltabilir ve hata oluşma olasılığını artırabilir. Bu nedenle goto komutunun dikkatli bir şekilde kullanılması gerekmektedir.

Özetlemek gerekirse, C# dilindeki özel döngü kontrol komutları sayesinde döngülerin akışını kontrol edebilir, döngüleri aniden sonlandırabilir, belirli adımları atlayabilir ve programın belirli bir noktaya atlamasını sağlayabiliriz.

Dizi ve Koleksiyonlar

=C# dilinde dizilerin ve koleksiyonların nasıl tanımlandığı ve kullanıldığı açıklanmaktadır.

C# programlama dilinde diziler ve koleksiyonlar çok önemli veri yapılarıdır. Diziler, aynı veri türünden öğelerin bir araya getirilerek oluşturulduğu yapıları ifade eder. Bir diziyi tanımlamak için, veri türünü belirtmeli ve kaç öğeden oluşacağını belirtmelisiniz. Örneğin, bir integer dizisini tanımlamak için int[] diziAdi = new int[5]; şeklinde bir tanımlama yapabilirsiniz. Bu tanımlama, dizinin 5 öğeden oluşacağını ve her bir öğenin integer veri tipinde olduğunu belirtmektedir.

Koleksiyonlar ise farklı veri türlerini içeren ve dinamik olarak boyutunu değiştirebilen yapılar olarak tanımlanabilir. C# dilinde birçok farklı koleksiyon türü bulunmaktadır, ancak en yaygın olarak kullanılanlar List, Dictionary ve HashSet gibi türlerdir. Listeler, belirli bir veri türünden öğeleri depolamak için kullanılırken, Dictionary'ler çiftleri anahtar-değer çifti şeklinde depolar ve her bir anahtarın benzersiz olmasını sağlar. HashSet ise benzersiz öğeleri depolamak için kullanılır.

Bir örnekle dizi ve koleksiyon kullanımını daha iyi anlayabiliriz. Diyelim ki bir öğrenci listesi oluşturmak istiyoruz. Bunun için bir öğrenci sınıfı tanımlayabiliriz ve bu öğrenci sınıfından oluşan bir List tanımlayabiliriz. Örneğin:

List<Ogrenci> ogrenciListesi = new List<Ogrenci>();Ogrenci ogrenci1 = new Ogrenci("Ahmet Yılmaz", 12);Ogrenci ogrenci2 = new Ogrenci("Ayşe Demir", 13);ogrenciListesi.Add(ogrenci1);ogrenciListesi.Add(ogrenci2);foreach (var ogrenci in ogrenciListesi){    Console.WriteLine(ogrenci.Ad + " - " + ogrenci.Yas);}

Bu örnekte, Ogrenci adında bir sınıf oluşturduk ve bu sınıftan oluşan bir List tanımladık. Ardından, yeni öğrenci nesneleri oluşturup bu listeye ekledik. Son olarak, foreach döngüsüyle öğrenciListesi içindeki her bir öğrenciyi ekrana yazdırdık.

Dizi ve koleksiyonların C# programlama dilinde çok önemli bir yeri vardır ve bu veri yapılarını doğru kullanmayı öğrenmek, programlamada büyük bir avantaj sağlar.

Sınıflar ve Nesne Yönelimli Programlama

C# dilinde sınıf tanımlama, nesne oluşturma ve nesne yönelimli programlama kavramlarına dair bilgiler sunulmaktadır. Nesne yönelimli programlama, yazılım geliştirmede sıkça kullanılan bir yaklaşımdır. Bu yaklaşım, programlama problemlerini gerçek dünyadaki nesneler ve ilişkileri üzerinden ele almayı sağlar.

Bir sınıf, benzer özelliklere ve davranışlara sahip nesnelerin bir araya getirildiği bir yapıdır. C# dilinde bir sınıf, class anahtar kelimesi kullanılarak tanımlanır. Sınıf tanımlamak için aşağıdaki örneği inceleyebilirsiniz:

<pre><strong>class</strong> Araba{   <strong>public</strong> string marka;   <strong>public</strong> string model;   <strong>public</strong> int yil;   <strong>public</strong> void BilgileriGetir()   {      Console.WriteLine("Marka: " + marka);      Console.WriteLine("Model: " + model);      Console.WriteLine("Yıl: " + yil);   }}<strong>Araba</strong> audi = <strong>new</strong> Araba();audi.marka = "Audi";audi.model = "A3";audi.yil = 2020;audi.BilgileriGetir();

Bu örnekte, Araba adında bir sınıf tanımlanmıştır. Bu sınıfın özellikleri olarak marka, model ve yıl kullanılmıştır. Ayrıca, BilgileriGetir adında bir metot tanımlanmıştır. Bu metot, arabaya ait bilgileri ekrana yazdırmaktadır. Sınıf içinde tanımlanan metotlar, o sınıfa ait nesneler tarafından kullanılabilir. Dolayısıyla, Audi marka bir araba oluşturularak BilgileriGetir metodu çağrılarak arabaya ait bilgiler ekrana yazdırılır.

Nesne yönelimli programlama, programcılara kodun daha düzenli, sürdürülebilir ve anlaşılır olmasını sağlar. Nesne yönelimli programlama konusunda daha fazla bilgi edinmek için C# dökümantasyonuna başvurabilirsiniz.

Miras Alma ve Ara Yüzler

Miras alma (inheritance), C# dilinde bir sınıfın başka bir sınıftan özelliklerini kalıtım yoluyla alabilmesini sağlayan bir kavramdır. Miras alınan sınıf temel sınıf veya üst sınıf olarak adlandırılırken, miras veren sınıf ise alt sınıf veya türetilmiş sınıf olarak adlandırılır. Bu sayede, başka bir sınıfın sahip olduğu özellikleri ve davranışları kendi sınıfımızda da kullanabiliriz.

Bir sınıfın başka bir sınıftan miras alabilmesi için "class" ifadesinden sonra iki nokta üst üste (:) işareti kullanılır ve sonra miras veren sınıfın adı yazılır. Ayrıca C# dilinde çoklu miras yapılamaz, yani bir sınıf sadece bir tane üst sınıftan miras alabilir.

Ara yüzler (interfaces) ise bir sınıfın belirli davranışları sağlaması için bir sözleşme veya şablondur. Bir ara yüzde method ve özellik bildirimleri yapılır, ancak bu bildirimlerin içi boştur ve gerçek kodlama alt sınıflar tarafından yapılır. Böylece, bir sınıf birden fazla ara yüzü uygulayabilir ve bu ara yüzlerin özelliklerini kullanabilir.

Ara yüzler, sınıflar arasında güçlü bağlantılar sağlar ve yazılımın yeniden kullanılabilirlik, esneklik ve sürdürülebilirliğini artırır. C# dilinde ara yüzler "interface" anahtar kelimesiyle tanımlanır ve bir sınıfın birden fazla ara yüzü uygulayabilmesine olanak tanır.

Bu özetle, miras alma ve ara yüzler C# dilinde obje yönelimli programlamanın temel taşlarıdır. Miras alma ile bir sınıfın özelliklerini başka bir sınıfın kullanması sağlanırken, ara yüzler sayesinde birden fazla sınıfın ortak davranışları bir arada tanımlanabilir. Bu sayede, kod tekrarı önlenir, daha sade ve modüler bir kod yapısı oluşturulur.

İstisna Yönetimi

C# dilinde istisnalar, programın normal akışını bozan ve hataları yönetmek için kullanılan özel kod bloklarıdır. İstisna yönetimi, programcının beklenmedik hataları önlemeye veya bu hatalarla başa çıkmaya yardımcı olmak için kullanılan bir yapıdır. C# dilinde bu yapı, try-catch ve finally blokları kullanılarak gerçekleştirilir.

Try-catch blokları, bir hata oluşması durumunda kodun nasıl devam edeceğini belirlemek için kullanılır. Try bloğu içerisine yazılan kodlar çalıştırılır ve bu kodları yazarken bir hata oluşması durumunda catch bloğuna geçilir. Catch bloğu ise hata yakalamak ve bu hataları yönetmek için kullanılır.

Finally bloğu ise try-catch blokları ile birlikte kullanılan ve her durumda çalışan bir bloktur. Try-catch bloklarından sonra çalıştırılır ve programın her durumda ne yapacağını belirlemek için kullanılır. Finally bloğu, kaynakların serbest bırakılması, dosyaların kapatılması gibi işlemlerin yapılmasını sağlar.

Örneğin, bir dosyayı okurken hata oluşabilir. Bu durumda try bloğu içerisinde dosyanın okunması işlemi yapılır ve eğer bir hata oluşursa catch bloğuna geçilir. Catch bloğunda hata türüne bağlı olarak gerekli işlemler yapılır ve finally bloğu her durumda çalıştırılarak dosyanın kapatılması sağlanır. Bu sayede programın beklenmedik hatalara karşı dirençli olması ve açık kaynakların düzgün bir şekilde kapatılması sağlanır.

İlgili Yazılar

Bir yanıt yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir