Hazırlayan: 22430070053 Deniz YAZICI
Proje Adı: Hafıza Oyunu
Proje Tanımı:
Hafıza Oyunu, kullanıcılara hafızalarını test etme fırsatı sunan eğlenceli bir oyundur. Oyuncular, bir kare tabloya yerleştirilmiş kartları çevirerek eşleşen çiftleri bulmaya çalışırlar. Oyunun amacı, tüm kartları eşleştirerek tablodaki tüm çiftleri bulmak ve en yüksek puanı elde etmektir.
Teknolojiler:
React: Projenin temelini oluşturan JavaScript kütüphanesi. Komponent tabanlı yapısı ve sanal DOM özelliği sayesinde oyunun hızlı ve etkileşimli bir şekilde çalışmasını sağlar.
CSS Animasyonları: Kartların çevrilmesi, eşleşme durumunda görsel geribildirimler gibi animasyonlarla oyunu daha etkileyici hale getirilir.
Oyun Mantığı: Kartların rastgele yerleştirilmesi, kartların çevrilmesi, eşleşme kontrolü ve puan hesaplama gibi oyunun temel mantığını oluşturan işlemleri React komponentlerine entegre ederiz.
Proje Aşamaları:
Tasarım: Oyunun kullanıcı arayüzü ve kartların tasarımını oluştururuz. CSS kullanarak kartların boyutlarını, renklerini ve çevirme animasyonlarını ayarlarız. Ayrıca, oyunun başlangıç ekranı, puan tablosu ve oyun sonu mesajları gibi ekranları da tasarlanabilir.
Kart Komponentleri: React ile kart komponentlerini oluştururuz. Her bir kartın bir ön yüzü ve bir arka yüzü olmalıdır. Kartların başlangıçta kapalı olarak görünmesini sağlarız ve kullanıcı tıkladığında çevrilerek içindeki simgeleri veya resimleri göstersin.
Oyun Mantığı: Kartların rastgele yerleştirilmesi için bir dizi oluştururuz ve bu diziyi karıştırırız. Kullanıcının kartları çevirmesi, eşleşme kontrolü ve puan hesaplama gibi oyun mantığını React komponentlerine entegre ederiz. Her bir kartın durumunu (kapalı, açık, eşleşti) tutan bir veri yapısı oluştururuz.
Oyun Kontrolleri: Kullanıcının kartları çevirmesi ve oyunu sıfırlaması gibi kullanıcı etkileşimlerini yöneten kontrolleri ekleriz. Kullanıcının tıkladığı kartı çevirme, eşleşmeleri kontrol etme ve puanları güncelleme gibi işlemleri gerçekleştirecek fonksiyonları oluştururuz.
Animasyonlar: Kartların çevrilme animasyonlarını CSS veya React animasyon kütüphaneleri kullanarak ekleriz. Kartların dönerken akıcı bir geçiş efekti ile hareket etmesini sağlayarak oyun deneyimini zenginleştiririz.
Oyun Zorluğu: Kart sayısını ve karmaşıklığı ayarlamak için seçenekler ekleriz. Kullanıcıların oyunun zorluk seviyesini belirlemesine olanak tanırız. Örneğin, 4x4 veya 6x6 gibi farklı tablo boyutları seçilebilir.
Puanlama: Oyuncuların puanlarını takip ederiz ve en yüksek puanı elde edenleri kaydederiz. Oyun sonunda puan tablosunu gösteririz ve kullanıcıları teşvik ederiz.
Sonuç:
Hafıza Oyunu projesi, kullanıcıların hafıza becerilerini test etmelerine ve eğlenceli bir oyun deneyimi yaşamalarına olanak sağlar. React'in güçlü bileşen yapısı ve CSS animasyonlarıyla birleşerek kullanıcı dostu bir arayüz sunar. Projenizi geliştirirken kodunuzun düzenli ve okunaklı olmasına özen gösteririz ve kullanıcı deneyimini en üst düzeye çıkarmak için oyunu test ederiz.