Projelere Dön

Perfect Timer Game

PythonTkinter

Python ve Tkinter ile gelistirilmis refleks oyunu. Hedef sure belirle ve tam aninda durdur: ne erken ne gec.

Proje Özeti

Perfect Timer Game, kullanıcıların zaman algısını ve refleks hızını milisaniye düzeyinde test eden bir simülasyon aracıdır. Python'un Tkinter kütüphanesi kullanılarak geliştirilen bu proje, olay tabanlı (event-driven) programlama mimarisi üzerine inşa edilmiştir. Temel amaç, belirlenen bir hedef süreye (örneğin 5.000 saniye) mümkün olan en yakın anda kronometreyi durdurmaktır.

Teknik Mimari ve Özellikler

Hassas Zaman Yönetimi

Oyunun çekirdeğinde, Python'un time modülü kullanılarak geliştirilmiş yüksek hassasiyetli bir sayaç mekanizması bulunur. Bu mekanizma, sistem saatini referans alarak milisaniye düzeyinde sapmaları hesaplar ve kullanıcıya anlık geri bildirim sağlar.

Olay Tabanlı GUI Tasarımı

Kullanıcı arayüzü, Tkinter'in olay döngüsü (mainloop) ile entegre çalışacak şekilde tasarlanmıştır. Buton tıklamaları ve zamanlayıcı güncellemeleri, ana iş parçacığını (main thread) bloke etmeden asenkron bir yapıda işlenir.

Dinamik Zorluk ve Skorlama

  • Hedef Süre Seçimi: Kullanıcı, farklı zorluk seviyelerine göre hedef süreleri dinamik olarak belirleyebilir.
  • Hata Payı Hesaplama: Durdurma anı ile hedef süre arasındaki fark, mutlak değer üzerinden hesaplanarak skorlama algoritmasına dahil edilir.

Kullanılan Teknolojiler

| Teknoloji | Rolü | |-----------|----------------| | Python 3.x | Çekirdek mantık ve uygulama çatısı | | Tkinter | Grafiksel kullanıcı arayüzü (GUI) ve olay yönetimi | | Time Modülü | Yüksek hassasiyetli zaman ölçümü |

Tech Stack

  • Python 3.x
  • Tkinter (GUI)
  • Time Module

Technical Architecture

UI -> Timer Engine -> Scoring -> Local Storage

Challenges & Lessons Learned

  • Zaman sapmalarini en aza indirmek
  • Event loop icinde gecikmesiz guncelleme
  • Adil skorlama ve geri bildirim tasarimi

Testing / Logging / Monitoring

  • Tests: Manuel senaryolar (farkli hedef sureler)
  • Logging: Skor/oturum kayitlari
  • Monitoring: Yerel uygulama, izleme gerektirmez

Kurulum

Projeyi yerel ortamda çalıştırmak için:

  1. Depoyu klonlayın:
    git clone https://github.com/furkandalyan/Perfect-Timer-Game.git
    
  2. Başlatın:
    python main.py