Arayüzlere Giriş
Arayüzlerin sınıflar için kuralları nasıl tanımladığını ve kod esnekliğini nasıl artırdığını öğrenin
Arayüzlere Giriş, CoddyKit'te ücretsiz bir C# Academy dersidir. Bu, 6 dersinin 1. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, C# Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. C# Academy kursu toplamda 6 dersten oluşur.
Arayüzlere Giriş
Arayüzlere Giriş
İleri Programlama Kavramları konusundaki ilk derse hoş geldiniz! Bu derste arayüzleri, kullanım amaçlarını ve C# programlarınızda soyutlama ile esneklik elde etmek için onları nasıl kullanacağınızı öğreneceksiniz. Hadi başlayalım!

Arayüz Nedir?
Arayüz Nedir?
Bir arayüz, bir sınıfın uygulaması gereken yöntem ve özellik kümesini tanımlayan bir sözleşmedir. Kendisi herhangi bir uygulama sağlamaz; ancak arayüzü uygulayan her sınıfın belirli bir tasarıma uymasını güvence altına alır.
Örnek: Bir "Vehicle" arayüzü, tüm araçların uygulaması gereken Start() ve Stop() gibi yöntemleri tanımlayabilir.
Temel Nokta: Arayüzler, davranışı uygulamadan ayırarak esnek ve yeniden kullanılabilir kodlar tasarlamanızı sağlar.
Arayüz Tanımlama
Arayüz Tanımlama
C# dilinde bir arayüz tanımlamak için interface anahtar kelimesini kullanın. Örnek:
İpucu: C# kurallarına göre arayüz adları I harfiyle başlar.
using System;
interface IVehicle {
void Start();
void Stop();
}
Arayüz Uygulama
Arayüz Uygulama
Bir arayüzü uygulamak için sınıfın, arayüzde bildirilen tüm yöntemleri ve özellikleri tanımlaması gerekir. Örnek:
Temel Nokta: Bir sınıf, birden çok davranışı desteklemek için birden fazla arayüz uygulayabilir.
using System;
interface IVehicle {
void Start();
void Stop();
}
class Car : IVehicle {
public void Start() {
Console.WriteLine("Car is starting.");
}
public void Stop() {
Console.WriteLine("Car is stopping.");
}
}
class Program {
static void Main() {
IVehicle myCar = new Car();
myCar.Start();
myCar.Stop();
}
}
Arayüzler Neden Kullanılır?
Arayüzler Neden Kullanılır?
Arayüzler çeşitli avantajlar sağlar:
- Soyutlama: Uygulamayı belirtmeden davranışı tanımlayın.
- Esneklik: Bir sınıf birden fazla arayüz uygulayabilir ve böylece birden çok rolü destekleyebilir.
- Tutarlılık: İlişkili sınıflar arasında ortak bir yapıyı zorunlu kılın.
İpucu: Bir sınıfın sözleşmesini, bunun nasıl yerine getirileceğini belirtmeden tanımlamak istediğinizde arayüzleri kullanın.
Birden Çok Arayüzü Birleştirme
Birden Çok Arayüzü Birleştirme
Bir sınıf, farklı davranış kümelerini birleştirmek için birden fazla arayüz uygulayabilir. Örnek:
using System;
interface IVehicle {
void Start();
void Stop();
}
interface IRadio {
void PlayMusic();
}
class Car : IVehicle, IRadio {
public void Start() {
Console.WriteLine("Car is starting.");
}
public void Stop() {
Console.WriteLine("Car is stopping.");
}
public void PlayMusic() {
Console.WriteLine("Playing music.");
}
}
class Program {
static void Main() {
Car myCar = new Car();
myCar.Start();
myCar.PlayMusic();
myCar.Stop();
}
}
Uygulama Görevi
Uygulama Görevi
CalculateArea() yöntemine sahip bir IShape arayüzü oluşturun. Bu arayüzü Rectangle ve Circle sınıflarında uygulayın. Örnek:
using System;
interface IShape {
double CalculateArea();
}
class Rectangle : IShape {
public double Width { get; set; }
public double Height { get; set; }
public double CalculateArea() {
return Width * Height;
}
}
class Circle : IShape {
public double Radius { get; set; }
public double CalculateArea() {
return Math.PI * Radius * Radius;
}
}
class Program {
static void Main() {
IShape rectangle = new Rectangle { Width = 5, Height = 4 };
IShape circle = new Circle { Radius = 3 };
Console.WriteLine("Rectangle Area: " + rectangle.CalculateArea());
Console.WriteLine("Circle Area: " + circle.CalculateArea());
}
}
Arayüzleri Kullanma için En İyi Uygulamalar
Arayüzleri Kullanma için En İyi Uygulamalar
İşte bazı en iyi uygulamalar:
- Sınıfların uyması gereken sözleşmeleri tanımlamak için arayüzleri kullanın.
- Ortak davranışı paylaşan ancak birbiriyle ilişkili olmayan sınıflar için kalıtım yerine arayüzleri tercih edin.
- Arayüzleri belirli bir amaca odaklı tutun ve gereksiz yöntem veya özellikler eklemekten kaçının.
İpucu: Arayüzler, bir sınıfın bunu nasıl yaptığını değil, ne yaptığını açıklamalıdır.
Tebrikler!
Tebrikler!
Tebrikler! Arayüzlerin temellerini ve programlarınızda soyutlama ile esneklik elde etmek için onları nasıl kullanacağınızı öğrendiniz. Sonraki derste soyut sınıfları inceleyecek ve bunların arayüzlerden farkını öğreneceğiz. Kod yazmaya devam edelim!

Sıkça Sorulan Sorular
“Arayüzlere Giriş” dersi ücretsiz mi?
Evet — “Arayüzlere Giriş” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve C# Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. C# Academy kursu toplamda 6 dersten oluşur.
“Arayüzlere Giriş” dersinde ne öğreneceğim?
Arayüzlerin sınıflar için kuralları nasıl tanımladığını ve kod esnekliğini nasıl artırdığını öğrenin C# Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
C# Academy öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te C# Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 6 dersinin 1. dersidir.
“Arayüzlere Giriş” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu C# Academy dersinde kod yazıp çalıştırabilir miyim?
Evet. Her C# Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- Arayüzlere Giriş
- Soyut Sınıflar
- Statik Üyeler ve Yöntemler
- Sıralamaları ve Yapıları Keşfetme
- Temsilciler ve Olaylar
- Koleksiyonlarla Çalışma: Listeler, Sözlükler ve Kuyruklar