Neler yeni
Metin2 Support

Metin2 Dünyasına Hoş Geldiniz! Yeni bir maceraya adım atın ve topluluğumuza katılın. Sorularınızı sormak, deneyimlerinizi paylaşmak ve diğer oyuncularla iletişim kurmak için hemen kaydolun. Kayıt olun, etkileşimde bulunun ve Metin2 dünyasındaki serüveninizi daha da özel hale getirin. Birlikte oynamak için sabırsızlanıyoruz!

C# Başlangıç Rehberi

ciow3r

New member
Katılım
5 Haz 2025
Mesajlar
21
Tepkime puanı
10
Puanları
3

C# Başlangıç Rehberi​

C#, Microsoft tarafından geliştirilen modern, nesne yönelimli ve genel amaçlı bir programlama dilidir. Özellikle masaüstü uygulamalar, web uygulamaları, API geliştirme, oyun geliştirme ve kurumsal yazılım projelerinde yaygın olarak kullanılır.

Yeni başlayan biri için C#, C veya C++'a göre genellikle daha kolay öğrenilebilir. Çünkü bellek yönetiminin büyük bölümü otomatik yapılır ve dilin sözdizimi daha düzenlidir.

C# öğrenirken temel hedef şu olmalıdır:

Önce değişkenler → Koşullar → Döngüler → Fonksiyonlar → Diziler → Listeler → Class → OOP → Proje geliştirme

Bu sırayla ilerlemek öğrenmeyi oldukça kolaylaştırır.

C# Nedir?​

C#, .NET platformu üzerinde çalışan bir programlama dilidir.

C# ile:

  • Konsol uygulamaları
  • Windows masaüstü uygulamaları
  • Web uygulamaları
  • REST API
  • Oyunlar
  • Mobil uygulamalar
  • Kurumsal yazılımlar
geliştirilebilir.

Özellikle Unity oyun motorunda C# kullanılması, dili oyun geliştirmek isteyen kullanıcılar arasında da oldukça popüler hale getirmiştir.

C# ile C Aynı mı?​

Hayır.

İsimleri benzer olsa da farklı programlama dilleridir.

C

daha düşük seviyeli çalışır ve manuel bellek yönetimine daha yakındır.

C#

daha yüksek seviyeli ve modern bir dildir.

C# içerisinde:

  • Garbage Collector
  • Class
  • Interface
  • LINQ
  • Async/Await
gibi gelişmiş özellikler bulunur.

C# ile C++ Aynı mı?​

Hayır.

C++ performans ve düşük seviye kontrol konusunda daha fazla esneklik sunar.

C# ise birçok işlemi daha kolay ve güvenli hale getirir.

Örneğin C++'ta pointer ve manuel bellek yönetimi daha önemliyken C#'ta çoğu günlük uygulamada bunlarla doğrudan uğraşmanız gerekmez.

5884786 8405 2

C# Öğrenmek Zor mu?​

Yeni başlayan biri için orta seviyede bir dildir.

Python kadar basit görünmeyebilir ancak C++'tan daha rahat öğrenilebilir.

Başlangıçta özellikle şu konular kolay anlaşılır:

  • Değişkenler
  • if/else
  • Döngüler
  • Fonksiyonlar
  • Class yapısı
Daha ileri seviyede:

  • LINQ
  • Delegate
  • Event
  • Async/Await
  • Generic
  • Dependency Injection
gibi konulara geçilebilir.

C# Öğrenmek İçin Önce Başka Dil Bilmek Gerekir mi?​

Hayır.

C# sıfırdan öğrenilebilir.

Önceden:

  • C
  • C++
  • Java
  • Python
bilmek avantaj sağlar ancak zorunlu değildir.

Programlamaya ilk kez başlıyorsanız da C# ile başlayabilirsiniz.

C# ile Ne Yapmak İstediğinizi Belirleyin​

C# öğrenme yolunuz hedefe göre değişebilir.

Oyun Geliştirme​

Unity

Web Geliştirme​

ASP.NET Core

Masaüstü Uygulama​

WinForms, WPF veya modern .NET çözümleri

API Geliştirme​

ASP.NET Core Web API

Genel Programlama Öğrenme​

Console Application

Yeni başlayan biri için ilk olarak konsol uygulamalarıyla başlamak en mantıklısıdır.

C# İçin Hangi Program Kullanılır?​

En yaygın seçenekler:

Visual Studio​

Windows'ta C# geliştirmek için en rahat seçeneklerden biridir.

İçerisinde:

  • Kod editörü
  • Derleyici
  • Debugger
  • Proje sistemi
hazır bulunur.

Visual Studio Code​

Daha hafif bir editördür.

.NET SDK ve gerekli C# eklentileri ayrıca kurulmalıdır.

Rider​

JetBrains tarafından geliştirilen güçlü bir IDE'dir.

Profesyonel geliştirmede oldukça başarılıdır ancak ücretlidir.

Yeni başlayan biri için Visual Studio yeterlidir.

.NET Nedir?​

C# yalnızca bir dil değildir.

C# kodları genellikle:

.NET

platformu üzerinde çalışır.

.NET içerisinde:

  • Runtime
  • Kütüphaneler
  • Derleyici araçları
bulunur.

C# öğrenirken .NET'in temel mantığını anlamak ileride işinizi kolaylaştırır.

İlk C# Programı​

Basit bir örnek:

Console.WriteLine("Merhaba Dunya!");

Program ekrana:

Merhaba Dunya!

yazar.

Modern .NET projelerinde bazı şablonlarda Main fonksiyonu doğrudan görünmeyebilir.

Ancak klasik kullanım şu şekilde de olabilir:

class Program
{
static void Main(string[] args)
{
Console.WriteLine("Merhaba Dunya!");
}
}

Console.WriteLine Nedir?​

Ekrana yazı yazdırmak için kullanılır.

Örneğin:

Console.WriteLine("Merhaba");
Console.WriteLine("Dunya");

çıktı:

Merhaba
Dunya

olur.

Console.Write ile WriteLine Farkı​

Console.WriteLine()

işlemden sonra yeni satıra geçer.

Console.Write()

aynı satırda devam eder.

Örneğin:

Console.Write("Adiniz: ");
Console.Write("Ahmet");

çıktı:

Adiniz: Ahmet

olur.

Değişken Nedir?​

Program içerisinde veri saklamak için kullanılır.

Örneğin:

int yas = 25;

Burada:

int

veri tipi,

yas

değişken adı,

25

değeridir.

Temel Veri Tipleri​

Başlangıçta şu veri tiplerini öğrenmek yeterlidir.

int​

Tam sayı:

int yas = 25;

double​

Ondalıklı sayı:

double fiyat = 125.50;

float​

Ondalıklı sayı:

float oran = 1.5f;

decimal​

Özellikle finansal hesaplamalarda kullanılabilir:

decimal para = 1500.75m;

bool​

Doğru veya yanlış:

bool aktif = true;

char​

Tek karakter:

char harf = 'A';

string​

Metin:

string isim = "Ahmet";

var Kullanımı​

C# içerisinde değişken tipi compiler tarafından çıkarılabilir.

Örneğin:

var isim = "Ahmet";
var yas = 25;

Burada compiler:

isim için string,

yas için int

olduğunu anlar.

Ancak yeni başlayanların önce veri tiplerini açık şekilde öğrenmesi daha faydalıdır.

Kullanıcıdan Veri Alma​

Console uygulamasında:

Console.ReadLine()

kullanılabilir.

Örneğin:

Console.Write("Adinizi girin: ");

string isim = Console.ReadLine();

Console.WriteLine("Merhaba " + isim);

Sayı Alma​

Console.ReadLine() sonucu string olarak gelir.

Bu nedenle sayıya dönüştürmek gerekir.

Örneğin:

Console.Write("Yasinizi girin: ");

int yas = int.Parse(Console.ReadLine());

Console.WriteLine("Yasiniz: " + yas);

int.Parse Güvenli mi?​

Kullanıcı sayı yerine harf girerse hata oluşabilir.

Bu nedenle gerçek projelerde:

int.TryParse()

daha güvenlidir.

Örneğin:

Console.Write("Yasinizi girin: ");

if (int.TryParse(Console.ReadLine(), out int yas))
{
Console.WriteLine("Yasiniz: " + yas);
}
else
{
Console.WriteLine("Gecersiz deger girdiniz.");
}

Matematiksel İşlemler​

Temel operatörler:

+ Toplama
- Cikarma
* Carpma
/ Bolme
% Mod

Örneğin:

int a = 10;
int b = 5;

int toplam = a + b;

Console.WriteLine(toplam);

Basit Hesap Makinesi​

Console.Write("Birinci sayi: ");
int a = int.Parse(Console.ReadLine());

Console.Write("Ikinci sayi: ");
int b = int.Parse(Console.ReadLine());

Console.WriteLine("Toplam: " + (a + b));

Yeni başlayanlar için oldukça iyi bir egzersizdir.

if Koşulu​

Bir koşula göre işlem yapar.

Örneğin:

int yas = 20;

if (yas >= 18)
{
Console.WriteLine("Resitsiniz.");
}

if else Kullanımı​

int yas = 16;

if (yas >= 18)
{
Console.WriteLine("Resitsiniz.");
}
else
{
Console.WriteLine("Resit degilsiniz.");
}

else if​

Birden fazla koşul kullanılabilir.

int not = 75;

if (not >= 85)
{
Console.WriteLine("Pekiyi");
}
else if (not >= 70)
{
Console.WriteLine("Iyi");
}
else if (not >= 50)
{
Console.WriteLine("Gecti");
}
else
{
Console.WriteLine("Kaldi");
}

Karşılaştırma Operatörleri​

C# içerisinde:

== Esittir
!= Esit degildir
> Buyuktur
< Kucuktur
>= Buyuk veya esittir
<= Kucuk veya esittir

kullanılır.

= ile == Karıştırılmamalı​

=

değer atamak içindir.

int sayi = 10;

==

karşılaştırma yapar.

if (sayi == 10)

Programlamaya yeni başlayanların sık yaptığı hatalardan biridir.

Mantıksal Operatörler​

&& → VE

|| → VEYA

! → DEĞİL

Örneğin:

int yas = 25;

if (yas >= 18 && yas <= 65)
{
Console.WriteLine("Kosul saglandi.");
}

switch Kullanımı​

Bir değişkenin farklı değerlerine göre işlem yapmak için kullanılabilir.

int secim = 2;

switch (secim)
{
case 1:
Console.WriteLine("Birinci secenek");
break;

case 2:
Console.WriteLine("Ikinci secenek");
break;

default:
Console.WriteLine("Gecersiz secim");
break;
}

Döngüler​

Tekrarlanan işlemler için döngüler kullanılır.

Başlangıçta:

  • for
  • while
  • do while
  • foreach
öğrenilmelidir.

for Döngüsü​

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

1'den 10'a kadar sayıları yazdırır.

while Döngüsü​

int i = 1;

while (i <= 10)
{
Console.WriteLine(i);
i++;
}

do while​

int i = 1;

do
{
Console.WriteLine(i);
i++;
}
while (i <= 10);

do while içerisindeki kod en az bir kez çalışır.

break​

Döngüyü sonlandırır.

for (int i = 0; i < 100; i++)
{
if (i == 10)
{
break;
}

Console.WriteLine(i);
}

continue​

Mevcut turu atlar.

for (int i = 1; i <= 10; i++)
{
if (i == 5)
{
continue;
}

Console.WriteLine(i);
}

Burada 5 yazdırılmaz.

Diziler​

Birden fazla aynı tip veriyi saklamak için kullanılabilir.

Örneğin:

int[] sayilar = { 10, 20, 30, 40, 50 };

İlk elemana:

sayilar[0]

ile erişilir.

Diziler C#'ta da:

0'dan başlar.

foreach Döngüsü​

Dizi ve koleksiyonlar üzerinde dolaşmanın kolay yollarından biridir.

int[] sayilar = { 10, 20, 30 };

foreach (int sayi in sayilar)
{
Console.WriteLine(sayi);
}

List Nedir?​

C# öğrenirken dizilerden sonra mutlaka:

List<T>

öğrenilmelidir.

Örneğin:

List<string> isimler = new List<string>();

isimler.Add("Ahmet");
isimler.Add("Mehmet");

Diziden farklı olarak listeye sonradan eleman eklemek kolaydır.

List Kullanımı​

Örneğin:

List<int> sayilar = new List<int>();

sayilar.Add(10);
sayilar.Add(20);
sayilar.Add(30);

foreach (int sayi in sayilar)
{
Console.WriteLine(sayi);
}

Dictionary Nedir?​

Anahtar ve değer şeklinde veri tutar.

Örneğin:

Dictionary<string, int> puanlar = new Dictionary<string, int>();

puanlar.Add("Ahmet", 100);
puanlar.Add("Mehmet", 80);

Daha sonra:

Console.WriteLine(puanlar["Ahmet"]);

çıktısı:

100

olur.

Fonksiyon Nedir?​

C# içerisinde genellikle Method olarak adlandırılır.

Belirli bir işi yapan kod bloğudur.

Örneğin:

static void Merhaba()
{
Console.WriteLine("Merhaba!");
}

Çağırmak için:

Merhaba();

kullanılır.

Parametreli Method​

static void Yazdir(string mesaj)
{
Console.WriteLine(mesaj);
}

Kullanımı:

Yazdir("Merhaba Dunya");

Değer Döndüren Method​

static int Topla(int a, int b)
{
return a + b;
}

Kullanımı:

int sonuc = Topla(10, 20);

Console.WriteLine(sonuc);

çıktı:

30

olur.

Class Nedir?​

C# nesne yönelimli bir programlama dilidir.

Class, nesneler oluşturmak için kullanılan şablon olarak düşünülebilir.

Örneğin:

class Oyuncu
{
public int can = 100;
public string isim;
}

Nesne oluşturmak:

Oyuncu oyuncu1 = new Oyuncu();

oyuncu1.isim = "Ahmet";

Object Nedir?​

Class'tan oluşturulan gerçek örnektir.

Örneğin:

Oyuncu

class'tır.

oyuncu1

ise object yani nesnedir.

Aynı class'tan birden fazla nesne oluşturabilirsiniz.

Oyuncu oyuncu1 = new Oyuncu();
Oyuncu oyuncu2 = new Oyuncu();

Constructor Nedir?​

Nesne oluşturulduğunda otomatik çalışan özel methoddur.

Örneğin:

class Oyuncu
{
public string isim;
public int can;

public Oyuncu(string yeniIsim)
{
isim = yeniIsim;
can = 100;
}
}

Kullanımı:

Oyuncu oyuncu = new Oyuncu("Ahmet");

public ve private​

Bir class içerisindeki verilere erişimi kontrol eder.

public​

Dışarıdan erişilebilir.

private​

Sadece class içerisinden erişilebilir.

Örneğin:

class BankaHesabi
{
private decimal bakiye;

public void ParaYatir(decimal miktar)
{
bakiye += miktar;
}
}

Bu yapı verilerin kontrolsüz değiştirilmesini önlemeye yardımcı olur.

Property Nedir?​

C# içerisinde çok sık kullanılır.

Örneğin:

class Oyuncu
{
public string Isim { get; set; }
public int Can { get; set; }
}

Kullanımı:

Oyuncu oyuncu = new Oyuncu();

oyuncu.Isim = "Ahmet";
oyuncu.Can = 100;

Csharp 157d0dbe2e0b13

Encapsulation Nedir?​

Verilerin dışarıdan kontrolsüz şekilde değiştirilmesini engelleme mantığıdır.

Örneğin oyuncunun can değeri:

  • 100'den büyük
  • 0'dan küçük
olmasın istiyorsanız kontrol ekleyebilirsiniz.

Inheritance Nedir?​

Bir class'ın başka bir class'ın özelliklerinden yararlanmasıdır.

Örneğin:

class Karakter
{
public int Can { get; set; }
}

class Savasci : Karakter
{
public int Zirh { get; set; }
}

Savasci

artık Karakter içerisindeki:

Can

özelliğine de sahiptir.

Polymorphism Nedir?​

Aynı temel yapı üzerinden farklı davranışların oluşturulmasını sağlar.

OOP'nin önemli konularından biridir.

Ancak yeni başlayan biri önce:

  • Class
  • Object
  • Constructor
  • Inheritance
konularını öğrenmelidir.

Daha sonra polymorphism'e geçmek daha kolaydır.

Interface Nedir?​

Bir class'ın hangi davranışları sunması gerektiğini tanımlamak için kullanılabilir.

Örneğin:

interface IHareketEdebilir
{
void HareketEt();
}

Daha sonra:

class Oyuncu : IHareketEdebilir
{
public void HareketEt()
{
Console.WriteLine("Oyuncu hareket ediyor.");
}
}

şeklinde kullanılabilir.

Exception Nedir?​

Program çalışırken oluşabilecek hatalardır.

Örneğin kullanıcı geçersiz veri girerse hata oluşabilir.

C# içerisinde:

try
{
int sayi = int.Parse("abc");
}
catch
{
Console.WriteLine("Bir hata olustu.");
}

kullanılabilir.

Ancak her hatayı boş catch ile gizlemek doğru değildir.

try catch Kullanımı​

Daha doğru örnek:

try
{
int sayi = int.Parse(Console.ReadLine());
}
catch (FormatException)
{
Console.WriteLine("Lutfen bir sayi girin.");
}

Belirli hata türlerini yakalamak daha mantıklıdır.

LINQ Nedir?​

C# öğrenirken ileri aşamada mutlaka karşılaşacağınız güçlü özelliklerden biridir.

Koleksiyonlar üzerinde:

  • Filtreleme
  • Sıralama
  • Arama
  • Gruplama
işlemlerini kolaylaştırır.

Örneğin:

List<int> sayilar = new List<int> { 10, 20, 30, 40 };

var buyukSayilar = sayilar.Where(x => x > 20);

Burada 20'den büyük sayılar seçilir.

Ancak LINQ öğrenmeden önce List ve method mantığını bilmek gerekir.

Lambda Nedir?​

Şuna benzer ifadeler:

x => x > 20

lambda expression olarak adlandırılır.

İlk başta karmaşık gelebilir.

C# temellerini öğrendikten sonra LINQ ile birlikte öğrenmek daha mantıklıdır.

Async/Await Nedir?​

Uzun süren işlemlerde programın gereksiz yere kilitlenmesini önlemeye yardımcı olur.

Örneğin:

  • İnternet isteği
  • Dosya okuma
  • Veritabanı işlemi
gibi konularda sık kullanılır.

Başlangıçta öğrenilmesi zorunlu değildir.

Önce temel C# öğrenilmelidir.

Garbage Collector Nedir?​

C# içerisinde kullanılan belleğin büyük bölümü otomatik olarak yönetilir.

Kullanılmayan nesneler:

Garbage Collector

tarafından temizlenebilir.

Bu nedenle C++'taki gibi her nesne için manuel delete kullanmanız gerekmez.

Ancak bu C#'ta bellek kullanımını hiç düşünmeyeceğiniz anlamına gelmez.

Özellikle oyun geliştirmede gereksiz obje oluşturmak performans sorunlarına neden olabilir.

C# ile Unity Kullanılır mı?​

Evet.

Unity'nin temel script dili C#'tır.

Örneğin:

using UnityEngine;

public class Player : MonoBehaviour
{
void Start()
{
Debug.Log("Oyun basladi");
}
}

Unity içerisinde kullanılabilir.

Unity Öğrenmeden Önce C# Bilmek Gerekir mi?​

Zorunlu değildir ancak ciddi avantaj sağlar.

Özellikle şu konuları önceden bilmeniz faydalıdır:

  • Değişkenler
  • if/else
  • Döngüler
  • Method
  • Class
  • List
  • OOP
Bunları bilmeden Unity öğrenildiğinde kullanıcı çoğu zaman kodu neden yazdığını anlamadan ezberlemeye başlar.

Unity İçin Hangi C# Konuları Öncelikli?​

Özellikle:

  1. Değişkenler
  2. if/else
  3. Methodlar
  4. Class
  5. List
  6. Array
  7. OOP
  8. Enum
  9. Coroutine
  10. Event
önemlidir.

Daha sonra:

  • Interface
  • Delegate
  • LINQ
öğrenilebilir.

Enum Nedir?​

Belirli seçenekleri isimlendirmek için kullanılabilir.

Örneğin:

enum KarakterTipi
{
Savasci,
Okcu,
Buyucu
}

Daha sonra:

KarakterTipi tip = KarakterTipi.Savasci;

şeklinde kullanılabilir.

Oyun geliştirmede oldukça faydalıdır.

C# ile Web Geliştirme​

C# yalnızca Unity için kullanılmaz.

ASP.NET Core ile:

  • Web sitesi
  • Backend
  • REST API
  • Yönetim paneli
geliştirilebilir.

C# temellerini öğrendikten sonra web tarafına geçmek isteyen biri ASP.NET Core öğrenebilir.

C# ile Masaüstü Uygulama​

Windows tarafında:

  • WinForms
  • WPF
gibi teknolojiler kullanılabilir.

Örneğin:

  • Stok takip
  • Müşteri programı
  • Basit muhasebe
  • Masaüstü araçları
geliştirilebilir.

Ancak başlangıçta görsel arayüzden önce Console projeleriyle temel C# öğrenmek daha mantıklıdır.

İlk C# Projeleri Ne Olmalı?​

Başlangıç için küçük projeler tercih edilmelidir.

Hesap Makinesi​

Öğretir:

  • Değişken
  • Operatör
  • Kullanıcı girişi
  • switch

Sayı Tahmin Oyunu​

Öğretir:

  • Random
  • while
  • if/else

Not Hesaplama​

Öğretir:

  • Matematik
  • Koşullar
  • Kullanıcı girişi

Basit ATM​

Öğretir:

  • Menu
  • switch
  • while
  • Method

Öğrenci Kayıt Sistemi​

Öğretir:

  • Class
  • List
  • Method

Basit Envanter Sistemi​

Öğretir:

  • OOP
  • Class
  • List
  • Döngüler

Basit Sayı Tahmin Oyunu​

Örneğin:

Random random = new Random();

int hedef = random.Next(1, 101);
int tahmin = 0;

while (tahmin != hedef)
{
Console.Write("Tahmininiz: ");

tahmin = int.Parse(Console.ReadLine());

if (tahmin < hedef)
{
Console.WriteLine("Daha buyuk bir sayi girin.");
}
else if (tahmin > hedef)
{
Console.WriteLine("Daha kucuk bir sayi girin.");
}
}

Console.WriteLine("Tebrikler!");

Yeni başlayan biri için oldukça iyi bir projedir.

Debugger Kullanmayı Öğrenin​

Programlama öğrenirken yalnızca kod yazmak yeterli değildir.

Hata bulmayı da öğrenmeniz gerekir.

Visual Studio içerisinde:

Breakpoint

koyarak programı satır satır çalıştırabilirsiniz.

Bu sayede:

  • Değişken değerlerini
  • Method akışını
  • Döngüleri
inceleyebilirsiniz.

Compiler Hatalarını Okuyun​

Örneğin Visual Studio:

  • Hata kodu
  • Dosya
  • Satır
bilgisi verir.

Hata mesajını okumadan rastgele kod değiştirmek yerine problemin nedenini anlamaya çalışın.

Null Nedir?​

Bir referansın herhangi bir nesneyi göstermediğini ifade edebilir.

Örneğin:

string isim = null;

Daha sonra doğrudan:

isim.Length

kullanırsanız problem oluşabilir.

Bu nedenle null kontrolü önemlidir.

NullReferenceException Nedir?​

C# öğrenirken sık görülen hatalardan biridir.

Bir nesne null durumdayken özelliğine erişmeye çalışırsanız oluşabilir.

Örneğin:

Oyuncu oyuncu = null;

Console.WriteLine(oyuncu.Can);

hata verir.

Unity kullanan yeni başlayanların da çok sık karşılaştığı hatalardan biridir.

C# Öğrenirken Yapılan Yaygın Hatalar​

Sadece Video İzlemek​

Kod yazmadan C# öğrenmek zordur.

Direkt Unity'ye Geçmek​

Temel C# bilgisi eksik kalabilir.

Her Kodu Copy/Paste Yapmak​

Kod çalışır ancak neden çalıştığı öğrenilemez.

Hata Mesajlarını Okumamak​

Programcı olmanın önemli bölümü hata çözmektir.

OOP Konularına Çok Erken Geçmek​

Önce temel programlama mantığını oturtun.

Her Şeyi Ezberlemeye Çalışmak​

Syntax ezberlemek yerine mantığı anlamak daha önemlidir.

C# Öğrenme Sırası​

Yeni başlayan biri için şu sıra kullanılabilir:

  1. Visual Studio ve .NET kurulumu
  2. Console.WriteLine
  3. Değişkenler
  4. Veri tipleri
  5. Kullanıcıdan veri alma
  6. Operatörler
  7. if/else
  8. switch
  9. for/while
  10. Methodlar
  11. Diziler
  12. List
  13. Dictionary
  14. Class
  15. Object
  16. Constructor
  17. Property
  18. Encapsulation
  19. Inheritance
  20. Interface
  21. Exception
  22. LINQ
  23. Async/Await
Bu konuların hepsini birkaç günde öğrenmeye çalışmayın.

İlk 4 Haftalık Öğrenme Planı​

1. Hafta​

  • Console
  • Değişkenler
  • Veri tipleri
  • Operatörler
  • Kullanıcı girişi
  • if/else

2. Hafta​

  • switch
  • for
  • while
  • Method
  • Array
  • List

3. Hafta​

  • Class
  • Object
  • Constructor
  • Property
  • public/private

4. Hafta​

  • Inheritance
  • Interface
  • Exception
  • Küçük proje
Daha sonra hedefiniz Unity ise Unity'ye geçebilirsiniz.

Günde Ne Kadar Çalışılmalı?​

Her gün:

30-60 dakika

düzenli çalışmak oldukça faydalıdır.

Örneğin:

20 dakika konu öğrenme
40 dakika kod yazma

şeklinde çalışabilirsiniz.

Bir günde 8 saat çalışıp daha sonra bir hafta hiç çalışmamak yerine düzenli pratik yapmak daha kalıcıdır.

C# Öğrenme Kontrol Listesi​

  • Visual Studio kuruldu mu?
  • İlk C# programımı çalıştırdım mı?
  • Değişkenleri biliyor muyum?
  • Veri tiplerini biliyor muyum?
  • Console.ReadLine kullanabiliyor muyum?
  • if/else yazabiliyor muyum?
  • switch kullanabiliyor muyum?
  • for ve while döngülerini biliyor muyum?
  • Method oluşturabiliyor muyum?
  • Array kullanabiliyor muyum?
  • List kullanabiliyor muyum?
  • Dictionary nedir biliyor muyum?
  • Class oluşturabiliyor muyum?
  • Object mantığını biliyor muyum?
  • Constructor kullanabiliyor muyum?
  • Property nedir biliyor muyum?
  • public/private farkını biliyor muyum?
  • Inheritance mantığını biliyor muyum?
  • Debugger kullanabiliyor muyum?
  • Küçük bir C# projesi tamamladım mı?

Sonuç​

C#, programlamaya başlamak isteyenler için oldukça güçlü ve dengeli bir programlama dilidir.

Özellikle:

  • Unity
  • .NET
  • Masaüstü uygulama
  • Web API
  • Kurumsal yazılım
alanlarına yönelmek isteyenler için uzun vadede oldukça faydalıdır.

Yeni başlayan birinin öğrenme sırası:

Değişkenler → Koşullar → Döngüler → Methodlar → Diziler → Listeler → Class → OOP

şeklinde olmalıdır.

C# öğrenirken en önemli nokta yalnızca eğitim izlemek değil, öğrendiğiniz her konuyu küçük projelerde kullanmaktır.

Başlangıç için:

Hesap makinesi → Sayı tahmin oyunu → Not hesaplama → ATM sistemi → Öğrenci kayıt sistemi → Basit envanter sistemi

şeklinde ilerleyebilirsiniz.

Unity öğrenmek istiyorsanız da önce temel C# konularını anlamanız büyük avantaj sağlar. Değişken, method, class ve List mantığını bildiğinizde Unity içerisindeki scriptleri ezberlemek yerine gerçekten anlamaya başlarsınız.

Kısacası C# öğrenmenin en doğru yolu:

Temelleri öğren → Bol bol kod yaz → Küçük projeler tamamla → Hedeflediğin alana yönel

şeklindedir.
 

Konuyu görüntüleyenler

  • Üst