Proje Özeti
Fast Writing Game, kullanıcıların klavye kullanım becerilerini geliştirmek, yazma hızını (WPM) artırmak ve doğruluğunu ölçmek için tasarlanmış, Python ve Tkinter tabanlı bir masaüstü uygulamasıdır.
Bu proje, GUI programlama, olay tabanlı (event-driven) mimari ve gerçek zamanlı metin işleme konularında pratik yapmak amacıyla geliştirilmiştir.
Teknik Mimari ve Özellikler
Gerçek Zamanlı Analiz
- Anlık Hata Vurgusu: Yanlış yazılan karakterler anında kırmızı ile işaretlenir, böylece kullanıcı hatasını hemen fark eder.
- WPM (Words Per Minute): Yazma hızı, dakikada yazılan kelime sayısı olarak hesaplanır ve gösterilir.
Rekabetçi Modlar
- Sürekli Yazma Modu: Belirli bir süre boyunca kesintisiz yazarak dayanıklılığınızı test edebilirsiniz.
- Skor Tablosu: En iyi süreler ve skorlar yerel olarak kaydedilir, böylece gelişiminizi takip edebilirsiniz.
Dinamik İçerik
- Rastgele Cümleler: Her oyunda farklı cümleler sunularak ezberciliğin önüne geçilir ve gerçek yazma becerisi ölçülür.
Kullanılan Teknolojiler
| Teknoloji | Rolü | |-----------|----------------| | Python 3.x | Ana geliştirme dili | | Tkinter | Grafiksel kullanıcı arayüzü (GUI) | | Time | Süre ölçümü ve zamanlayıcı | | Random | Rastgele cümle seçimi |
Tech Stack
- Python 3.x
- Tkinter (GUI)
- Time
- Random
Technical Architecture
UI -> Input Handler -> Typing Engine -> Metrics/Scoring -> Local Storage
Challenges & Lessons Learned
- Gercek zamanli karakter dogrulama ve gorsel geri bildirim
- WPM hesaplamasinda dogruluk ve adalet
- UI akiciligi (event loop) ve gecikme yonetimi
Testing / Logging / Monitoring
- Tests: Manuel senaryolar (kisa/uzun metin, farkli hizlar)
- Logging: Basit skor/oturum kayitlari
- Monitoring: Yerel uygulama, izleme gerektirmez
Kurulum
Projeyi yerel ortamda çalıştırmak için:
- Depoyu klonlayın:
git clone https://github.com/furkandalyan/FastWriting-Game.git - Başlatın:
python main.py