Cohorts
  • Discover
  • About Us
  • Blog
  • Patika.dev
  • Web3

C# 101

Programlama Dillerinin Tarihçesi
C# Tanıtımı

Dotnet 5 Kurulumu
VS Code Kurulumu

Main Methodu - Namespace kavramı - System Using Direktifleri - Run

Değişkenler ve Veri Tiplerleri

Operatorler

Tip Dönüşümleri

Try Catch Finally ve Mantıksal Hatalar
Debugging, Watch ve Variables Pencereleri

If-ElseIf-Ternary-If
Switch-Case

For Loop ve Break Continue Ifadeleri
While Foreach

Tanımlama, Erişim ve Döngülerle Dizi Kullanımı
Array Sınıfı Methodları

Metot Tanımlama
Metot Overloading
Rekürsif ve Extension Metotlar

Algoritma Soruları

String Metotlar
Datetime ve Math Sınıfları

Koleksiyonlar Nedir? Avantajları ve Dezavantajları Nelerdir?
Generic Koleksiyonlar ve List
ArrayList
Dictionary

Koleksiyonlarla ilgili algoritma soruları

Sınıf Nedir ? Instance, Field, Property
Erişim Belirleyiciler ve Kurucu Fonksiyonlar
Encapsulation ve Property Kavramı
Static Sınıf ve Üyeler
Struct(Yapı) Kavramı
Enum

Object Orientented Programming ve Prensipleri Nedir?
Inheritance
Polymorphism ve Sealed Class
Interface
Abstract Class

Telefon Rehberi Uygulaması

ToDo Uygulaması

Metot Nedir ?

Metotları programı küçük parçalara ayrıştırmak için kullanırız. Büyük bir işi tek bir metot içinde yazmak yerine küçük parçalara ayırarak yazmak daha doğru bir yaklaşımdır.

Bu bizi hem kod tekrarından kurtarır hem de daha okunabilir kod parçaları yazmamızı sağlar. Metotlar tek başlarına kullanılabilen yapılar değildir. Bir sınıf içerisinde yazılmalı ve ancak sınıfın nesnesi aracılığıyla erişilebilir olmalıdır. (Static sınıf metodlarına sinifAdi.metotIsmi şeklinde erişilebilir.)

Söz dizimi ise aşağıdaki gibidir:

	erişim_belirteci geri_donus_tipi metot_adi(argüman/parametre)
	{
		//komutlar;
	}


Yukarıda public erişim tipinde, integer geri dönüş tipine sahip, Topla isminde ve 2 tane integer tipinde parametre alan bir metot tanımı görüyoruz.

Metotlat içerisinde tanımlanan değişkenler sadece metot içerisinden erişilebilirler. Programından başından sonuna kadar yaşamazlar. Metottan çıkıldığından lifetime ı yani yaşam süresi sona erer.

Ref Kullanımı

Bir fonksiyona parametre aktarırken değer veya referans tipinde paramtere verebiliriz.

  • Değer tipleri metoda bit bit kopyalanır. Yani int bir değişkeni parametre olarak değer tipinde bir fonksiyona verdiğimizde; fonksiyon çalışırken bellekten integer bir değişkeni saklayabilecek kadar yer ayrılır ve gönderilen parametre orada saklanır Fonksiyon içerisinde parametre üzerinde değişiklik yapıldığında ana değişken değişmez. Sadece kopyası üzerinde değişiklik yapılmış olur. Fonksiyon sonlandığındaysa bellekten silinir. Yani yaşam süresi sona erer.

Değer Tiplerini şu şekildedir: int, long, float, double, decimal, char, bool, byte, short, struct, enum

  • Referans olarak bir atama yapıldığında ise fonksiyona ilgili değişkenin bellekteki adresi gönderilmiş gibi düşünebilirsiniz. Dolayısıyla fonksiyon asıl değişken üzerinde değişiklik yapar. Fonksiyon içerisinde bir değişiklik yapıldığında çağırıldığı yerdeki değişken de değişikliğe uğramış olur. Yani değeri değişir. Bu nedenle ref anahtar kelimesini kullanırken çok dikkatli olunmalıdır.

Ref Kullanımının Özellikleri:

  • Referans olarak iletilmek istenen değişkenin önüne "ref" yazılmalıdır.
  • ref olarak metoda verilen değişkenin mutlaka bir başlangıç değeri olmak zorundadır.

Örnek ref kullanımı ise şu şekildedir :

int x = 3;
int y = 4;
int sonuc = instance.ArttırVeTopla(ref x, ref y);

public int ArttırVeTopla (ref int x, ref int y)
{
    x+=1;
    y+=y;
    return (x+y);
}

Ödev

Submit your work to complete this lesson.

Join the project workspace to share your solution and receive feedback.

Previous
Next

Lesson discussion

Swap insights and ask questions about “C# 101”.

Enroll to participate
Start the course to unlock the discussion. Enrolling helps us keep conversations relevant to learners.
Cohorts
WebsiteDiscoverBlogPatika.devRise In
CoursesCircleRustSoliditySolanaWeb3 FundamentalsBlockchain Basics
CompanyAbout UsTerms of UsePrivacy PolicyGDPR NoticeCookies
Don't miss any update!

Disclaimer: The information, programs, and events provided on https://cohorts.patika.dev is strictly for upskilling and networking purposes related to the technical infrastructure of blockchain platforms. We do not provide financial or investment advice, nor do we make any representations regarding the value, profitability, or future price of any blockchain or cryptocurrency. Users are encouraged to conduct their own research and consult with licensed financial professionals before engaging in any investment activities. https://cohorts.patika.dev disclaims any responsibility for financial decisions made by users based on the information provided here.

© 2026 Cohorts, All rights reserved