🚀 C# ile Programlamaya Giriş: Kodlamaya İlk Adımını At, Kendi Projelerini Geliştirmeye Başla!
00ANASAYFA 01YAZILAR 02EĞİTİM 03ELEKTRİK_ENERJİ 04OTOMOTİV_MÜHENDİSLİĞİ 05ARAÇLAR 06LAB 07SÖZLÜK 08ETİKETLER ♡OKUMA LİSTEM ⌕ARA
TRENG

İlk Program: Main ve Üst Düzey İfadeler

Console.WriteLine ve ReadLine ile ekrana yazıp kullanıcıdan veri alıyor, klasik Main yöntemi ile modern üst düzey ifadelerin farkını öğreniyorsun.

Programın başlangıç noktası

Her programın bir başlangıç noktası vardır: bilgisayar çalıştırmaya oradan başlar. C#'ta bu nokta uzun yıllar boyunca Main adlı bir metottu. Modern C#'ta (9. sürümden beri) ise üst düzey ifadeler sayesinde bu iskeleti yazmak zorunda değilsin; derleyici senin yerine üretir.

Yeni stil: üst düzey ifadeler

Şablonun verdiği tek satır, tam bir programdır:

Console.WriteLine("Merhaba, Byte Akademi!");

Klasik stil: Main metodu

Eski kitaplarda ve bazı projelerde şu biçimi göreceksin. İkisi aynı işi yapar:

using System;

namespace MerhabaDunya
{
    internal class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Merhaba, Byte Akademi!");
        }
    }
}

Burada using System; "System ad alanındaki hazır sınıfları kullanacağım" demektir; Console sınıfı oradadır. Yeni .NET projelerinde sık kullanılan ad alanları gizlice eklenir (buna implicit usings denir), o yüzden yeni stilde using yazmadan Console kullanabildin.

Yazdırmak: Write ve WriteLine

Console.WriteLine yazdıktan sonra alt satıra geçer, Console.Write geçmez.

Console.Write("Gerilim: ");
Console.Write(12);
Console.WriteLine(" V");
Console.WriteLine("Bu satır altta başlar.");
Gerilim: 12 V
Bu satır altta başlar.

Kullanıcıdan veri almak: ReadLine

Console.ReadLine() kullanıcının yazdığı satırı metin olarak döndürür. Kullanıcı hiçbir şey yazmadan giriş akışını kapatırsa null dönebilir; bu yüzden dönüş tipi string? yazılır (soru işareti "boş olabilir" demek, ilerleyen derslerde göreceğiz).

Console.Write("Adın nedir? ");
string? ad = Console.ReadLine();
Console.WriteLine($"Merhaba, {ad}!");
Adın nedir? Fatih
Merhaba, Fatih!

Tırnaktan önceki $ işareti string enterpolasyonu demektir: süslü parantez içine yazdığın değişken ya da ifade, metnin içine yerleştirilir. Metinleri + ile birleştirmekten çok daha okunaklıdır.

Yorum satırları

Kodun içine, programın çalışmasını etkilemeyen notlar yazabilirsin. Gelecekteki sen (ya da başka biri) bunlara teşekkür edecek.

// Tek satırlık yorum

/* Birden fazla
   satıra yayılan yorum */

Console.WriteLine("Yorumlar çalışmaz"); // satır sonu yorumu da olur

Dikkat: C# büyük/küçük harfe duyarlıdır. console.writeline hata verir; doğrusu Console.WriteLine. Her ifadenin sonuna ; koymayı da unutma.

Kaçış dizileri

Metnin içinde özel karakterler için ters eğik çizgi kullanılır: \n yeni satır, \t sekme, \" tırnak işaretidir.

Console.WriteLine("Kanal\tDeğer");
Console.WriteLine("CH1\t3,3 V");
Console.WriteLine("Bir \"tırnaklı\" kelime");

Derleyici hata mesajlarını okumak

Bir hata yaptığında derleyici dosya adını, satır numarasını ve bir hata kodunu (CS1002 gibi) yazar. Mesajın tamamını sonuna kadar oku: çoğu zaman sorunun ne olduğunu ve nerede olduğunu doğrudan söyler. Birden çok hata varsa en üsttekini düzelt; alttakiler çoğu zaman onun yan etkisidir. Bu alışkanlık, programlamada kazandıracağı zaman açısından en değerli becerilerden biridir.

Kendin dene

Kullanıcıdan adını ve bölümünü soran, sonra "Merhaba Ayşe, Elektrik-Elektronik Mühendisliği okuyorsun." gibi tek bir cümle yazdıran bir program yaz. İki ayrı ReadLine ve bir enterpolasyonlu metin kullan. Sonra çıktıyı \t ile iki sütuna dönüştürmeyi dene.

// Mini sınav

Bir seçeneğe tıkla; doğru mu yanlış mı, anında ve nedeniyle birlikte göreceksin.

1. Console.Write ile Console.WriteLine arasındaki fark nedir?
2. $"Merhaba, {ad}!" ifadesindeki $ işareti ne sağlar?
3. Console.ReadLine() hangi türde veri döndürür?

Bitirdiğinde işaretle: ilerlemen kaydolur, +20 XP kazanırsın.

İpucu: ← → tuşlarıyla dersler arasında gezinebilirsin.