Yapay zekadan makale özeti
- Kısa
- Ayrıntılı
- Bu video, bir eğitmen tarafından sunulan Flutter programlama dili ile bayrak quiz uygulaması geliştirme eğitimidir.
- Eğitim, SQLite veritabanıyla çalışır hale getirilen bir bayrak quiz uygulamasının adım adım geliştirilmesini kapsamaktadır. İçerikte veritabanının projeye aktarılması, gerekli kütüphanelerin eklenmesi, veritabanı erişim nesnesi (DAO) sınıfının oluşturulması, veritabanından rastgele beş soru ve üç yanlış seçenek alma, soru sayacı ve doğru-yanlış kontrolü yapma işlemleri detaylı olarak gösterilmektedir.
- Uygulama, beş sorudan oluşan bir quiz ekranı, doğru-yanlış seçenekleri, sayaç sistemi ve sonuç sayfası içermektedir. Eğitmen, değişkenlerin tanımlanması, butonların yapılandırılması ve doğru-yanlış sayımının nasıl yapıldığı gibi konuları da açıklamaktadır. Video sonunda geliştirilen uygulamanın test edilmesi için yeşil butona basılarak ilk soru yükleme işlemi gösterilmektedir.
- 00:05Bayrak Quiz Uygulaması Tanıtımı
- Bu derste Bayrak Quiz uygulaması SQLite veritabanıyla çalışır hale getirilecek.
- Quiz ekranında veritabanından beş bayrak bilgisi alınacak ve doğru bayrak resim olarak görünecek.
- Dört seçenek arasından üç tanesi yanlış, biri doğru olacak ve doğru cevap verildiğinde sayaç artacak.
- 01:00Quiz Ekranı Özellikleri
- Her butona basıldığında bir sonraki soru yüklenecek ve beşinci soruya geldiğinde sonuç sayfasına geçiş yapılacak.
- Sonuç sayfasında doğru ve yanlış cevap sayısı yüzde olarak gösterilecek.
- "Tekrar dene" seçeneği ile ana sayfaya dönülüp quiz tekrar gerçekleştirilebilir.
- 01:47Veritabanı Ekleme ve Kütüphane Ekleme
- Projeye veritabanı eklenecek ve pubspec.yaml dosyasına asset kısmına veritabanı adı tanımlanacak.
- Path ve Sqflite kütüphaneleri projeye eklenecek, Path kopyalama yapmak için, Sqflite ise SQLite üzerinde çalışmak için kullanılacak.
- Projeye pubspec.yaml dosyası eklenecek ve gerekli kütüphaneler eklenecek.
- 03:43Yardımcı Sınıf ve DAO Oluşturma
- Lib dosyasına "Veritabanı Yardımcısı SQLite" sınıfı eklenecek.
- Lib dosyasına "BayraklarDAO" adında yeni bir Dart dosyası oluşturulacak.
- Veritabanında "bayraklar" adında bir tablo olacak ve bu tabloda bayrak adı ve bayrak resmi bilgileri yer alacak.
- 05:35BayraklarDAO Sınıfı
- Bayraktar sınıfına "rastgeleBeşBayrakGetir" adında bir metod eklenecek.
- Bu metod future özelliğinde olacak ve bayraklar sınıfından nesneler dönecek.
- Metod asenkron olacak ve veritabanından beş bayrak getirecek.
- 06:53Veritabanına Erişim ve Rastgele Bayrak Alma
- Veritabanına erişim için "db" nesnesi kullanılıyor ve veritabanı yardımcısı sınıfı ile veritabanına erişim sağlanıyor.
- Veritabanından beş tane rastgele bayrak almak için "map" kullanılarak dinamik bir liste oluşturuluyor.
- "SELECT * FROM bayraklar ORDER BY RANDOM(1) LIMIT 5" sorgusu ile bayraklar tablosundan rastgele beş bayrak çekiliyor.
- 09:30Bayrakları Nesneye Dönüştürme
- Çekilen beş bayrak önce nesneye dönüştürülüyor, sonra liste haline getiriliyor.
- "Generate" fonksiyonu kullanılarak "maps.length" kadar bayrak nesnesi oluşturuluyor.
- Her bayrak nesnesine "bayrak_id", "bayrak_adı" ve "bayrak_resim" alanları atanıyor.
- 11:55Yanlış Seçenekleri Alma
- Yanlış seçenekleri almak için "rastgele_üç_yanlış_getir" adında yeni bir metod oluşturuluyor.
- Bu metod, doğru sorunun bayrak id'sini alarak, bu bayrak id'ye eşit olmayan üç tane rastgele bayrak çekiyor.
- Çekilen üç bayrak da nesneye dönüştürülüp liste haline getiriliyor.
- 14:22Arayüz İçin Ön Değişkenler ve Nesneler
- Quiz ekranında soruları ve yanlış seçenekleri tutmak için "sorular" ve "yanlış_seçenekler" listeleri oluşturuluyor.
- Doğru soruyu tutmak için "bayraktar" sınıfından bir nesne oluşturuluyor.
- Tüm seçenekleri tutmak için "tüm_seçenekler" adında bir HashSet oluşturuluyor ve bu HashSet'in otomatik karıştırma özelliği kullanılarak seçenekler karıştırılıyor.
- 17:16Soru Uygulaması İçin Değişkenler
- Soru sayacı, doğru ve yanlış sayaçları gibi değişkenler oluşturulacak.
- Bayrak resim adı değişkeni, resim yüklenemezse placeholder olarak kullanılacak.
- Buton yazıları için boş bir değişken oluşturulacak ve üzerine seçenekler yazdırılacak.
- 19:02Soruları Alma Metodu
- "Soruları al" adında bir metod oluşturulacak ve veritabanından beş bayrak nesnesi alınacak.
- Future metodu kullanılarak asenkron işlem yapılacak ve sorular listesi içerisine bayraklar aktarılacak.
- Bayraklar sınıfının "rastgele beş getir" metodu kullanılarak sorular listeye aktarılacak.
- 21:06Soruları Yükleme Metodu
- "Soru yükle" adında bir metod oluşturulacak ve alınan sorular arayüze yüklenecek.
- Soru sayacı sıfırdan başlatılarak ilk soru doğru soru olarak alınacak.
- Bayrak resim adı değişkeni, doğru sorunun bayrak resmi olarak ayarlanacak.
- 23:19Yanlış Seçenekleri Oluşturma
- Her soru için üç tane yanlış cevap getirilecek ve bunlar "yanlış seçenekler" listesine aktarılacak.
- "rastgele üç yanlış getir" metodu kullanılarak doğru sorudan farklı üç yanlış seçenek alınacak.
- Tüm seçenekler listesi temizlenecek ve doğru soru ile üç yanlış seçenek bu listeye eklenecek.
- 25:44Butonlara Yazı Aktarma
- Buton yazıları için "tüm seçenekler" listesinden rastgele veriler alınacak.
- ButonA, ButonB, ButonC ve ButonD değişkenlerine sırasıyla sıfırıncı, birinci, ikinci ve üçüncü indekslerden veriler aktarılacak.
- Tüm değişiklikler set state metodu ile arayüze güncellenecek.
- 27:25Soru Sayacı Oluşturma
- Butonlara basıldığında cevap verildiğinde bir sonraki soru yüklenmesi için soru sayacı oluşturulması gerekiyor.
- Soru sayacı, soru sayacı artı bir şeklinde artırılıyor ve if ile kıyaslanıyor.
- Soru sayacı beşten farklı bir değerdeyse soru yüklenebilir, beş olduğunda ise sonuç sayfasına geçiş yapılabilir.
- 29:07Sonuç Sayfası Geçişi
- Sorular bittiğinde doğru sayacı karşı tarafa gönderilerek sonuç ekranına en son sayaç değeri iletilir.
- Soru sayacı artırılmazsa yeni soru gelmez, bu sayede birer birer soru yüklenir.
- Önemli olan soru sayacı artırmak ve yanlış seçenekleri almak.
- 30:35Doğru Kontrolü
- Doğru kontrolü için void doğru kontrol metodu oluşturuluyor.
- Buton yazılarıyla doğru soru kıyaslanıyor ve doğru ise doğru sayaç artı bir, yanlış ise yanlış sayaç artı bir oluyor.
- Bu şekilde doğru ve yanlış sayacı arttırılıyor.
- 32:00Arayüzde Metodların Kullanımı
- Arayüzde doğru ve yanlış sayacı göstermek için dolar işareti ve doğru sayacı kullanılıyor.
- Soru sayacı artı bir şeklinde artırılıyor ve ilk çalıştırıldığında sıfır değerindeyken bir eklenerek kaçıncı soru olduğu anlaşılıyor.
- Son soruda soru sayacı beş olduğunda "beş soru" yazısı görünmesi için koşul oluşturuluyor.
- 34:49Buton ve Resim İşlemleri
- Butonların üzerinde anlık olarak seçenekler gösteriliyor ve buton yazılarına buton yazıları aktarılıyor.
- Butona basıldığında önce doğru kontrolü yapılıyor, sonra soru sayacı kontrol ediliyor.
- Resmin anlık olarak değişmesi için bayrak resim adı kullanılıyor.
- 36:44Soru Veritabanından Alma ve Arayüz Tasarımı
- Değişkenler sayesinde veritabanından sorular, yanlış seçenekler ve anlık doğru soru tanımlanmıştır.
- Tüm seçenekler, doğru soru ve yanlış seçenekler karıştırılarak arayüzde gösterilecektir.
- Arayüzde doğru ve yanlış soru sayacı, soru sayacı ve bayrak resim adı gibi bileşenler bulunmaktadır.
- 37:24Soru Yükleme ve Arayüz Güncelleme
- Soru sayacı, sorunun yüklenmesini sağlar ve sıfırdan başlayarak beş soru yüklenir.
- Bayrak resim adı, resim geç yüklenirse göstermek için oluşturulmuştur.
- Buton yazıları (yazıcı yazı ve yazı) yanlış seçenekleri ve doğru seçeneği aktaracaktır.
- 38:16Soru Yükleme İşlemi
- "Soruları al" butonuna basıldığında beş soru getirilir.
- "Soru yükle" butonuna basıldığında ilk soru yüklenir ve doğru soru olarak işaretlenir.
- Yanlış seçenekler doğru soruyla karıştırılıp buton yazılarına aktarılır ve arayüz güncellenir.
- 39:24Buton Kontrolleri ve Sayaçlar
- Soru sayaç kontrolü, her butona basıldığında soru sayacını bir artırır.
- Soru sayacı beş olduğunda soru yükleme işlemi durdurulur ve geçiş yapılır.
- Doğru kontrol butonunda, buton üzerindeki yazı ile doğru sorunun bayrak adı kıyaslanır ve doğru/yanlış sayaçları güncellenir.
- 40:22Arayüz Gösterimi ve Test
- Doğru ve yanlış sayaçlar arayüze eklenir.
- Soru sayacı beş olduğunda arayüzde "altı soru" gibi görünür.
- Yeşil butona basıldığında yükleme işlemi başlar ve ilk çalıştığı zaman ana sayfa görüntülenir.
- 41:47Quiz Uygulamasının Çalışma Prensibi
- Quiz uygulaması başlatıldığında soru sayaç sıfır olduğu için ilk soru görüntülenir.
- Soru arayüzünde Romanya bayrağı ve seçenekler yer alır, doğru cevap bayrak olarak gösterilir.
- Soru yüklendiğinde place holder yerine resim görüntülenir ve buton yazıları aktarılır.
- 43:10Soru Cevaplama Mekanizması
- Doğru cevap seçildiğinde "doğru" değeri artar ve soru sayaç bir artırılır.
- Yanlış cevap seçildiğinde "yanlış" değeri artar ve soru sayaç bir artırılır.
- Her soru için doğru cevap ve üç farklı yanlış seçenek karıştırılır.
- 45:39Quiz Sonucu ve Tekrar Başlatma
- Beşinci soruda doğru cevap sayısı beş olduğunda sonuç sayfasına geçiş yapılır.
- Quiz tekrar başlatıldığında rastgele sorular görüntülenir ve farklı sonuçlar elde edilebilir.
- Sonuç ekranında doğru ve yanlış soru sayısı ile başarı yüzdesi görüntülenir.
- 46:54Kodun Çalışma Mantığı
- Kodda bayraklar, sorular, yanlış seçenekler ve doğru soru listeleri kullanılır.
- "Soru al" fonksiyonu ile beş soru alınır ve arayüz güncellenir.
- Doğru kontrol ve soru sayaç kontrolü yapılarak sayfa geçişi sağlanır.