Narrow screen resolution Wide screen resolution Increase font size Decrease font size Default font size default color green color orange color
İnsanın üç dostu vardır:
1. Şahsi dostu,
2. Dostunun dostu,
3. Düşmanının düşmanı
Uzaktan Görsel Eğitim Uygulaması Yazdır e-Posta
Makale Dizini
Uzaktan Görsel Eğitim Uygulaması
Uygulama Hakkında
Genel Görünüm ve Özel Dizi Tanımlama Ekranı
Görsel Hızlı Ayarlar ve Üç Boyutlu Görünüm
Ayarlar Ekranı
Dinamik Ağaç Yapıları Ekranı
Gerçek Zamanlı Kod Görüntüleme Penceresi ve Yardım Penceresi
Hakkında Penceresi ve Algoritmalar Menüsü
Tüm Sayfalar

Bilgisayar destekli görsel öğretim uygulaması olarak; geniş bir araştırma alanı oluşturması, temel veri yapılarını içermesi ve görsel materyaller olmadan anlaşılmasının zor olması sebepleriyle  sıralama algoritmaları ele alınmıştır.  Detaylı Açıklama İçin Tıklayın.


Sıralama algoritmalarının yapısal olarak, arama algoritmalarının büyük bir bölümü içine alması nedeniyle yapılan bu çalışma arama algoritmalarının anlaşılmasına da yardımcı olacaktır.

Bu tez kapsamında yapılan çalışmalar anahatlarıyla aşağıdaki gibi ele alınabilir.
©      Algoritmalar ve algoritmaların matematiksel analizi konularında araştırma yapılmıştır.

©     Öncelikle sıralama algoritmaları üzerinde yüzeysel bir araştırma yapılarak; algoritmaları gerçekleyecek temel veri yapıları tespit edilmiştir.

©      Temel veri yapıları hakkında araştırma yapılıp,bu yapılar gerçeklenmiştir.

©      Temel sıralama algoritmaları ve literatürde adı geçen sıralama algoritmaları detaylı olarak ele alınmıştır.

©      Üzerinde inceleme yapılan algoritmalardan yola çıkılarak, sıralama algoritmalarının genel analizi yapılmıştır.

©      Sıralama algoritmalarının geniş kapsamlı ve çeşitli olması sebepleriyle; geliştirilecek uygulamada hangi tip algoritmaların görselleştirileceği belirlenmiştir. Sonuç olarak; günümüzde sık tercih edilen ve tüm veri türlerini destekleyen algoritmalar olan karşılaştırmalı sıralama algoritmalarının görselleştirilmesi hedeflenmiştir.

©      Algoritmalarda yapılan karşılaştırmalar ve yer değiştirmeler, koşma zamanında izlenebilecek ve interaktif olarak değişiklikler yapılabilcek şekilde görselleştirilmiştir.

©      Karşılaştırma yapan algoritmaların daha iyi anlaşılması ve karşılaştırma yapmayan algoritmaların da kısmî olarak görselleştirilmesi amacıyla koşma zamanında icra edilen program kodları, kod penceresi üzerinden takip edilebilmektedir.

©      Son olarak geliştirilen uygulama, algoritmaların performans değerlendirmeleri, grafiksel arabirimin değiştirilebilmesi, gecikmelerin kontrol edilebilmesi, yer değiştirme anlarında ses dosyası çalma, herhangi bir anda kayıt, kodları ve görsel öğeleri yazdırma gibi ek opsiyonlarla zenginleştirilmiştir.


  • Uygulama Hakkında :
    Programın tasarımında öncelikle sıralama algoritmalarını gerçekleyecek teknik konular üzerinde yoğunlaşılmıştır. Bu konular aşağıdaki gibi özetlenebilir.

    ©      Karşılaştırma ve yer değiştirme yapacak prosedürlerin içeriği: Yer değiştirme işlemi iki ayrı metotla gerçeklenmiştir. “YerDegis” adlı metodla üzerinde işlem yapılan dizi elemanları  geçici değişken yardımıyla yer değiştirilmiştir. “GorunumDegis” metodu ise Borland C++ Builder 5 ile birlikte gelen “TChart” bileşeni yardımıyla oluşturulan görsel dizinin elemanlarının yer değiştirilmesi , ses dosyası çalma, durum çubuğunda işlemleri görüntüleme ve periyodik örneklerin kaydedilmesi için kullanılmıştır.

    ©      Performans değerlendirmesini yapacak prosedürün genelleştirilmesi: Algoritmaların çalışma zamanlarının gösterilmesi , çalıştırılan her algoritma için istatistiksel kayıt ve program kodlarının takip edildiği “Kod Penceresi”nin kilitlenmesi bu metot içinde tanımlanmıştır.
    ©      Sıralama yapılacak dizinin yapısı, hata kontrolleri ve farklı dizi çeşitlerinin tanımlanması: Hata kontrolünün içinde tanımlanmış olması ve çalışma zamanında boyutunun değiştirilebilmesine olanak sağladığından dinamik diziler kullanılmıştır. Farklı dizi çeşitleri matematiksel formüller ve derleyicide tanımlı formüller kullanılarak gerçekleştirilmiştir.

Aşağıda iki boyutlu görünüm modunda, dizi çeşitleri menüsü ve programın genel görünümü gösterilmiştir.





  • Genel Görünüm ve Özel Dizi Tanımlama Ekranı :

    ©      Kullanıcı tarafından dizi tanımlanmasına ve bu dizinin kaydedilmesine-yüklenmesine olanak sağlanmıştır.

    ©      Görselliğin arttırılması amacıyla dizi elemanlarının üç boyutlu görüntülenmesine, şekillerinin değiştirilmesine, grafiğin farklı renklerde ve çeşitlerde görüntülenmesine olanak sağlanmıştır.


    Aşağıda üç boyutlu paralel projeksiyon modunda, kullanıcı tanımlı dizi çeşitleri penceresi ve programın genel görünümü gösterilmiştir.






  • Görsel Hızlı Ayarlar ve Üç Boyutlu Görünüm :

    ©      İnteraktifliğin arttırılması için sık kullanılan program ayarları pencere üzerine de aktarılmıştır. Yer değiştirme-karşılaştırma anlarında kullanılacak renkler,otomatik güncelleme,grafik şekilleri ve görünüm modu bu ayarlarla belirlenebilmektedir.

    ©      Sağ alt köşeye yerleştirilen yön tuşları vasıtasıyla üç boyutlu perspektif görünümde dizinin döndürülmesine olanak sağlanmıştır.


    Aşağıda üç boyutlu perspektif projeksiyon modunda, hızlı ayarlar etkinken programın genel görünümü gösterilmiştir.



  •  Ayarlar Ekranı :

    ©      Dizi üzerinde yapılan karşılaştırmaların ve yer değiştirmelerin kolayca izlenebilmesi için; bu anlarda programın kısa sürelerle gecikmesi(uyuması) gerekmektedir.Bunun için ayarlar penceresindeki ilk bölüm olan “Gecikmeler” tasarlanmıştır.

    ©      Yer değiştirme anlarının daha kolay takip edilebilmesi için program içinde bulunan ya da kullanıcının belirlediği bir ses dosyası çalınabilmektedir.

    ©      Saniye cinsinden karşılaştırma zamanları birbiriyle aynı ya da çok yakın algoritmaların karşılaştırılabilmesi için işlemci saat darbesinin görüntülenmesi ayarlanabilmektedir.

    ©      Programın görselleği için gerekli ayarlar ise “Görünüm Ayarları” bölümünde bulunmaktadır. Görünüm modları, grafik şekilleri ve grafikteki renk ayarları bu bölümde ayarlanabilmektedir.

    Ayarlar penceresinden alınan örnek ekran çıktısı aşağıdaki gibidir.




  • Dinamik Ağaç Yapıları Ekranı :


    ©      Ağaç yapılarıyla sıralama yapan algoritmaların daha iyi anlaşılabilmesi için aşağıda örnek çıktısı verilen pencere kullanılmıştır.

    ©      Bu penceredeki renk değerleri ve gecikme miktarları ise ayarlar penceresiyle aynı olacak şekilde tasarlanmıştır.

    ©      Düğümlerin üst-üste gelmesinin engellenmesi için pencerenin sağ ve sol altında yer alan ekstra ayarlar tanımlanmıştır.



 

  • Gerçek Zamanlı Kod Görüntüleme Penceresi ve Yardım Penceresi :


    ©      Program kodlarının akışı “Kod Penceresi”( üstteki iç pencere) yardımıyla sağlanmıştır. Koşan algoritmanın satırları, interaktif olarak bu pencere yardımıyla gözlenebilmektedir.

    ©      Son olarak; HTML tabanlı bir “Yardım Penceresi” (alltaki iç pencere) oluşturularak; bu tezin içeriğindeki konuların,kavramların ve algoritmaların açıklamalarının görüntülenmesi sağlanmıştır.

    Bu pencereleri içeren örnek ekran çıktısı aşağıdaki gibidir.



  •  Hakkında Penceresi ve Algoritmalar Menüsü : Toplam 24 Sıralama Algoritmasının Görsel Gösterimi Sağlanmıştır.