İçeriğe geç
parazade

Arayüz Ne Demek?

İngilizce: Interface

Yayın: · Son güncelleme:

Arayüz Ne Demek? Kısaca

Arayüz (interface), nesne yönelimli programlamada bir sınıfın hangi metotları sağlaması gerektiğini tanımlayan, ancak bu metotların nasıl çalışacağını belirtmeyen sözleşmedir. Günlük dilde arayüz, kullanıcının yazılımla etkileşim kurduğu ekranı da ifade eder.

Arayüz nedir?
İçindekiler
  1. Arayüz ne demek?
  2. Nasıl kullanılır?
  3. Kullanıcı arayüzü ile karıştırmayın

Arayüz ne demek?

Programlamada arayüz, sınıflar için yazılmış bir sözleşmedir. "Bu arayüzü uygulayan her sınıfın ode() ve iade_et() metotları olmak zorunda" der, ama bu metotların içini yazmaz. İçeriği, arayüzü uygulayan her sınıf kendi kuralına göre doldurur.

Duvardaki elektrik prizini düşünün. Priz standart bir biçim tanımlar; buzdolabı da süpürge de bu biçime uyan fişle çalışır. Prizin, hangi cihazın takıldığını bilmesi gerekmez. Yazılımdaki arayüz de farklı sınıfların aynı noktaya bağlanmasını sağlar.

Nasıl kullanılır?

Java'da interface OdemeYontemi ile tanımlanır ve sınıflar implements OdemeYontemi diyerek uygular. C# ve TypeScript'te de benzer yazım vardır. Python'da ayrı bir interface anahtar kelimesi yoktur; aynı iş soyut sınıflarla ya da Protocol yapısıyla yapılır.

Somut bir örnek: bir e-ticaret sistemi KargoFirmasi arayüzü tanımlar ve ucret_hesapla() metodunu zorunlu kılar. Üç farklı kargo firması için üç sınıf yazılır. Sepet ekranı hangi firmanın seçildiğine bakmadan aynı metodu çağırır; dördüncü bir firma eklendiğinde mevcut kod değişmez.

Kullanıcı arayüzü ile karıştırmayın

Gündelik dilde arayüz denince çoğunlukla ekran tasarımı akla gelir. Bu anlamdaki karşılık kullanıcı arayüzü, yani UI'dır: düğmeler, menüler ve formlar. API de bir tür arayüzdür, iki yazılımın birbiriyle nasıl konuşacağını tanımlar.

Hangi anlamın kastedildiği bağlamdan anlaşılır. Bir yazılım ilanında "arayüz geliştirme" genellikle frontend işini, bir kod incelemesinde "arayüzü uygula" ise interface sözleşmesini anlatır.

Sıkça Sorulan Sorular

Arayüz nedir, soyut sınıftan farkı ne?

Arayüz yalnız hangi metotların bulunacağını tanımlayan bir sözleşmedir. Soyut sınıf ise bazı metotların hazır kodunu ve ortak verileri de içerebilir; Java'da bir sınıf birden fazla arayüz uygulayabilir ama tek bir sınıftan türeyebilir.

Kullanıcı arayüzü ne demek?

Kullanıcının bir yazılımla etkileşim kurduğu ekran, düğme ve menülerin bütünüdür. Kısaca UI olarak anılır ve programlamadaki interface kavramından farklıdır.

İlgili terimler

Soyutlama(Abstraction)Soyutlama (abstraction), programlamada karmaşık ayrıntıları gizleyip kullanıcıya yalnız ihtiyaç duyduğu işlevleri sade bir biçimde sunma ilkesidir. Nesne yönelimli programlamada soyut sınıflar ve arayüzlerle uygulanır.Çok Biçimlilik(Polymorphism)Çok biçimlilik (polymorphism), nesne yönelimli programlamada aynı adlı metot çağrısının, çağrıldığı nesnenin türüne göre farklı biçimde çalışmasıdır. Böylece farklı nesneler tek ve ortak bir arayüzle kullanılabilir.UI(User Interface)UI (User Interface, kullanıcı arayüzü), bir kullanıcının yazılım, web sitesi ya da cihazla etkileşim kurduğu butonlar, menüler, formlar, ikonlar ve yazılar gibi görünen ve dokunulan tüm öğelerin bütünüdür.Kalıtım(Inheritance)Kalıtım (inheritance), nesne yönelimli programlamada bir sınıfın başka bir sınıfın özelliklerini ve metotlarını devralmasıdır. Devralan sınıfa alt sınıf, devredilen sınıfa üst sınıf denir.Sınıf(Class)Sınıf (class), nesne yönelimli programlamada aynı türden nesnelerin hangi verileri ve davranışları taşıyacağını tanımlayan şablondur. Sınıftan üretilen her somut örneğe nesne denir.PythonPython, okunabilir ve sade sözdizimiyle bilinen, genel amaçlı, açık kaynaklı bir programlama dilidir. Veri bilimi, yapay zekâ, otomasyon ve web geliştirmede en yaygın kullanılan dillerden biridir.Karşılık(Provision)Karşılık, muhasebede gerçekleşmesi muhtemel ama tutarı veya zamanı kesin olmayan bir yükümlülük ya da varlık değer kaybı için önceden ayrılan ve dönemin giderine yansıtılan tahmini tutardır.Yazılım(Software)Yazılım, bir bilgisayarın ya da akıllı cihazın ne yapacağını adım adım tarif eden programların, verilerin ve talimatların bütünüdür. Donanım fiziksel parçaları, yazılım ise bu parçaları çalıştıran mantığı ifade eder.

İlgili yazılar

Yapay Zeka ile Kazanç

Kendi Bilgisayarında Ücretsiz Yapay Zekâ Sistemi Kur: Ekran Kartı, İşlemci ve RAM ile Adım Adım

Kendi bilgisayarında ücretsiz ve limitsiz bir yapay zekâ sistemi kurmak mümkün: Ollama ya da LM Studio ile dil modeli, Continue ile kod asistanı, ComfyUI ya da Forge ile görsel üretim. Belirleyici olan ekran kartının belleğidir (VRAM); 8 GB'lık kartta 7-8B modeller rahat çalışır, kart yoksa işlemci ve RAM ile daha yavaş çalışır.

· 30 dk okuma