Abstract Data Type (ADT – Soyut Veri Tipleri)

ADT, bilgisayar bilimlerinde bir grup veriyi ve bu veri üzerinde yapılabilecek işlemleri düzenleyen yapının adıdır. Soyutluk kelimes, veri yapısının bir tasarım olması ve kullanıcı için, yapının içinin tamamen soyut olması, kullanan kişilerin bu veri tipinin uygulama detayları ile ilgili bilgisinin olmasını gerektirmemesidir.
Örnek soyut veri tipleri olarak bağlı liste , yığın (stack) , sıra ( queue) , kompleks sayılar , kümeler sayılabilir.

Veri tipinin soyut olması aşağıdaki C/C++ dilindeki stack (yığın) örneği ile açıklanabilir:
Örneğin dilimizdeki tanımlı fonksiyonlar aşağıdaki şekilde olsun. (bu fonksiyonlar aynı zamanda arayüz (interface) fonksiyonlarıdır)
long stack_create(); /* yeni bir stack yap */
void stack_push(long stack, void *item); /* stack'e yeni bir eleman (item) koy */
void *stack_pop(long stack); /* stack'in tepesindne bir eleman al */
void stack_delete(long stack); /* stack'i sil */

Bu fonksiyonlar kullanılarak, iç yapılarından tamamen habersiz bir programcı aşağıdaki şekilde program yazıp bu veri tipini kullanabilir:

long stack;
struct foo *f;
stack = stack_create(); /* yeni bir stack yap */
stack_push(stack, f); /* foo'yapısını stack'e ekle */
f = stack_pop(stack); /* stackin en üstündeki elemanı al */

ADT’nin (abstract data types) daha verimli olabilmesi için özellikle nesne yönelimli programlama dillerinde, her tip nesneyi alabilecek yapıda olması önerilir. Bu sayede çok şekilcilik (polymorphism) sağlanmış olur ve stack içine istenilen tipten veri konulabilir. Diğer bir yöntem ise stack tanımında template kullanmaktır. Bu sayede bütün stack elemanları tek bir tip olacak ancak tip tanımı stack oluşturulurken verilmiş olacaktır.

ADT yapısına uygun olarak kodlanan ve dizi kullanan bir stack uygulaması: stack_arr.rar

Bu yazıyı beğendiyseniz, başkalarının da ilgisini çekebilirsiniz:


376 views

1 response to “Abstract Data Type (ADT – Soyut Veri Tipleri)”
  1. Ahmet says:

    Hocam gerçekten mantığını çok güzel açıklamışsınnız. Yazılarınızın devamını dilerim.

Leave a Reply


2 + = dokuz

Benzer Yazılar:

Bilgisayar Kavramları üzerinde şu anda okumakta olduğunuz 'Abstract Data Type (ADT – Soyut Veri Tipleri)' isimli yazı 04 May 2007 tarihinde, saat: 12:02 'de �adi Evren �EKER tarafından gönderilmiş, toplam376 defa okunmuştur.

Benzer yazıları Bilgisayar Kavramları, veri yapıları kategorilerinden okuyabilirsiniz. Yazar ile irtibat kurmak için email gönderebilirsiniz. Yazıya yorum yapabilir ya da yapılan yorumları RSS 2.0 ile takibe alabilirsiniz.


Category: Bilgisayar Kavramları, veri yapıları