İlk program
SDK’yi zaten kurdunuz ve ilk laboratuvarı çalıştırdınız. Ekran pine gösterdi. Bu sayfa aynı program biçiminde kalır ve farklı bir soru sorar: dosyanın içindeki hangi satır o kelimeyi yazdı, hangi satırlar hiçbir şey yazmadı. .NET’i yeniden kurmuyorsunuz. Önceki sayfadaki sürüm satırı olduğu gibi kalabilir. Pine adlı public sınıfı koruyun, Main’i koruyun ve Console.WriteLine("pine"); satırını koruyun. Açıkladığınız ekran hâlâ tek satırdır ve o satır pine’dır.
Dosyada birden fazla satır vardır, bu yüzden ilk tahmin her dosya satırının ekranda bir satır olmasıdır. O tahmin yanlıştır ve sayfanın geri kalanı nedenini gösterir. Birkaç satır bir şey adlandırır. Yalnızca biri yazar. Süslü parantezler bu satırları gruplar. Onlar da yazmaz. Dosya önünüzdeyken yazma satırına işaret edebildiğinizde bu sayfa biter. Sonraki sayfa ekranın göstermediği bir not ekler. pine’ı değiştirmez.
using System;
public class Pine
{
public static void Main()
{
Console.WriteLine("pine");
}
}
using System kısa adları hazırlar
İlk yararlı satır using System;dir. Bunu ekranın basacağı bir cümle değil, hazırlık satırı olarak okuyun. System ad alanından adları kısa forma getirir, böylece Console uzun yol olmadan görünebilir. Ekranda using kelimesini görmezsiniz. Ekranda System görmezsiniz. Yanlış bir deneyde bu satırı silerseniz kısa ad Console sonra başarısız olabilir — bu bir derleme hikâyesidir, başka güne. Bu sayfada satır kalır ve ekran pine kalır, çünkü bu satır yazmaz.
Sınıf satırı türü adlandırır
Sonraki tür satırı public class Pine’dır. Bunu ekran metni değil, işi olan üç kelime olarak okuyun. public, başka kodun bu türü kullanmasına izin verildiği anlamına gelir. Ekranda public görmezsiniz. class, bu dosyanın bir adlı birim tanımladığı anlamına gelir. Ekranda class görmezsiniz. Pine o birimin adıdır. Bu öğretim biçiminde dosya gövdesi adı o adla eşleşir. Bu satırdaki adı değiştirirseniz dosya adı alışkanlığı da birlikte değişmelidir. O kural tür ve dosya hakkındadır. Ekran hakkında değildir. Ekrana tekrar bakın. Ekran Pine göstermez. pine gösterir. Büyük P ile küçük p aynı kelime değildir. Sınıf satırı adını asla ekrana yazmaz.
O satırdan sonraki karakter açılış süslü parantezi {dir. Dosyada daha sonra gelen eşleşen kapanış parantezi sınıf gövdesini bitirir. Bu parantezler arasındaki her şey sınıf Pine’a aittir. Parantezler çittir. C#’a bu birimin nerede başlayıp nerede bittiğini söylerler. Bir çit ekran metni değildir. pine’ın yanında { veya } görmezsiniz. Açılış parantezini silerseniz dosya bozulur ve derleyici sessiz kalmak yerine hata yazar. O hata bu sayfa değildir. Bu sayfa her iki parantezi de tutar ve ekran pine kalır.
Main satırı runtime’ın başladığı yerdir
Sonraki satır public static void Main()dır. Programın nereden başladığı sorulduğunda insanlar bu satırı gösterir ve başlangıç konusunda haklıdırlar. Sonra ekranın Main gösterdiğini söylerlerse yanılırlar. Runtime projeyi çalıştırdığınızda bu biçime sahip bir yöntem arar. Çalıştırmaya bu satırdan başlar. Başlamak yazmakla aynı şey değildir. Satırdaki kelimeler nasıl başlanacağına dair talimatlardır. Ekran için kelimeler değildir.
Kelimeleri tek tek alın ve her birini ekrana karşı kontrol edin. public yine yöntemin dışarıdan başlatılabileceği anlamına gelir. static, runtime’ın önce bir nesne oluşturmadan bu yöntemi başlatabileceği anlamına gelir. Nesnelerle henüz tanışmadınız, bu yüzden yalnızca şu yeterlidir: bu öğretim biçiminde static zorunludur ve basılmaz. void, bu yöntemin çağırana bir değer geri vermediği anlamına gelir. Bu sayfada çağıran hikâyesi yoktur ve void ekranda değildir. Main, runtime’ın bu biçimde aradığı addır. Ekran hâlâ o dört harfi göstermez. Yuvarlak parantezler parametre listesini işaretler. Bu sayfada liste boştur. Boş parantezler de basılmaz.
Yani Main satırı aynı anda iki şekilde doğru olabilir. Runtime gerçekten oradan başladı. Ekran o satırdan tek bir kelime almadı. Gözünüz dosyanın ortasında oturduğu için Main’de kalıyorsa, kaydırın. Ekrandan hatırladığınız kelime pine’dır ve pine bu satırda yazılmaz.
İç satır pine yazar
Main içinde, kendi süslü parantezleri arasında bir satır daha vardır. O satır Console.WriteLine("pine");dır. Ekranı yazan satır budur. Dosyada girintilidir, böylece Main içinde oturduğunu görürsünüz. Girinti boşluktur. Boşluklar da ekrana yazılmaz. Runtime bu iç satırı çalıştırır çünkü programın başladığı yöntemin içindedir. Ekran bu iç satırın yazdığını kullanır. Dış yöntemin adını kullanmaz.
İç satırı soldan okuyun. Console bu kursun kullandığı ekran yardımcısıdır. WriteLine, bunu yaz sonra satırı bitir demektir. Yuvarlak parantez içindeki kısım yazılan şeydir. Parantezlerin içinde pine kelimesi çift tırnak arasında durur. Tırnaklar pine’ı metin olarak işaretler. Metnin parçası değildirler. Zihninizde tırnakları çıkarın; kalan kelime pine’dır ve bu bütün ekrandır. Tırnakları dosyada bırakın. Tırnaklar olmadan derleyici pine’ı o metin literal’i olarak görmez. Sondaki noktalı virgül ifadeyi C# için bitirir. Ekranda noktalı virgül görmezsiniz. pine görürsünüz, sonra satır biter çünkü WriteLine bitirmiştir.
İşte o yazma satırı tek başına, böylece diğer satırlar onu gizleyemez.
Console.WriteLine("pine");
dotnet run komutundaki hiçbir şey pine kelimesini seçmez. Komut yalnızca projeyi başlatır. Kelime tırnaklardan gelir. Tırnaklarda farklı bir kelime olsaydı ekran o kelimeyi gösterirdi ve bu sayfa öyle yapmaz. Bu sayfadaki tırnaklar pine tutar, bu yüzden ekran pine’dır. Tek satır. İkinci satır yok. Ekranda tırnak yok. Main kelimesi yok. Pine kelimesi yok.
📊 Which line the screen shows
| Satır | Ekran |
|---|---|
using System; |
bu satırdan hiçbir şey |
public class Pine |
bu satırdan hiçbir şey |
public static void Main() |
bu satırdan hiçbir şey |
Console.WriteLine("pine") |
pine |
İnsanlar neyi yanlış okur
Yaygın hata dosyayı yukarıdan okuyup en tanıdık kelimenin çıktı olduğunu varsaymaktır. Main önemli görünür ve önemlidir, çünkü runtime bu biçimi onsuz başlatmaz. Önem çıktı değildir. Main satırını parmağınızla kapatabilirsiniz ve yazma satırı hâlâ Console.WriteLine("pine");dır. Yazma satırını kapatıp hâlâ ekranı açıklayamazsınız. Başka bir hata, sınıf Pine diye adlandırıldığı için ekranın Pine gösterdiğini söylemektir. Ekran tırnaklar arasındaki kelimeyi kullanır ve o kelime küçük p ile yazılır. Üçüncü hata satır saymaktır. Dosya birkaç satır ve birkaç süslü parantez gösterir. Ekran birini gösterir. Süslü parantezler, public ve static ve void kelimeleri, Main adı, Pine adı ve using System; çalıştırmadan sonra hâlâ dosyadadır. Çalıştırma onları silmez. Onları basmaz da.
Ekran bir satırdan gelir
Parmağınızı Console.WriteLine("pine"); üzerine koyup ekranın bu satırdan geldiğini söyleyebilirsiniz. Parmağınızı public static void Main() üzerine koyup runtime’ın oradan başladığını ve Main kelimesinin ekranda olmadığını söyleyebilirsiniz. Parmağınızı public class Pine üzerine koyup bu adın öğretim türüyle eşleştiğini ve ekranla eşleşmediğini söyleyebilirsiniz. Sonraki sayfa dosyaya bir not koyar. Not, dosyayı okuyan kişi içindir. Ekran hâlâ pine olacaktır, çünkü not ikinci bir WriteLine değildir.
C# yazma satırını pratik ederken kalan Java System.out.println("mint") alışkanlıklarını bu sayfadan uzak tutun. ASP.NET rotaları uydurmayı bu sayfadan uzak tutun. dotnet --version’ı ekran kelimesi saymayı bu sayfadan uzak tutun — sürüm satırı kurulum kanıtıydı, bu programın çıktısı değil. Yazma satırını adlandırıp Main ve Pine kaynaklı yanlış tahminleri reddedebildiğinizde First Program işini yapmıştır ve devam ederseniz C# Comments’e hazırsınız.
🧠 Bilginizi Test Edin
Bilginizi Test Edin
Bu interaktif sınavla kendini test et ve konuyu ne kadar iyi anladığını gör
📝 Talimatlar
- Her soruyu dikkatle okuyun
- Her soru için en iyi cevabı seçin
- Quiz'i istediğiniz kadar tekrar alabilirsiniz
- İlerlemeniz üstte gösterilecek