Yapay zekadan makale özeti
- Kısa
- Ayrıntılı
- Bu video, bir eğitmen tarafından sunulan C# programlama dili eğitim içeriğidir. Eğitmen, izleyicilere adım adım bir test programı geliştirme sürecini göstermektedir.
- Videoda, üç sekmeden oluşan (soru hazırlama, sınav başlatma ve sonuçları görüntüleme) bir test programının geliştirilmesi anlatılmaktadır. Eğitim, form tasarımı ile başlayıp, soruların text dosyasına yazılması, testin başlatılması, soruların okunması, cevapların alınması ve sonuçların hesaplanması adımlarını kapsamaktadır.
- Eğitim boyunca "soru getir" ve "cevap al" fonksiyonlarının oluşturulması, timer kullanımı, butonların aktif/pasif durumlarının değiştirilmesi ve doğru-yanlış cevap sayısının list view ile gösterilmesi gibi konular detaylı olarak ele alınmaktadır. Program, soruları bir text dosyasından okuyor, kullanıcıdan cevap alıyor ve sonuçları başka bir text dosyasına kaydediyor.
- 00:16Nesne Tabanlı C# Test Programı Tanıtımı
- Derste test programı yapımı, metod tanımlama ve page kontrolü konuları ele alınacak.
- Programda soru hazırlama ekranı, testi yapma ekranı ve sonuçları gösterme ekranı olacak.
- Soruları hızlı kaydet butonuna basıldığında bir text dosyasına kaydedilecek ve cevaplar kontrol edilecek.
- 01:53Programın Tasarımı
- Visual Studio'da yeni bir Windows Form Application projesi oluşturuluyor.
- Üç adet page kontrol (sekme) ekleniyor: birinci sekmede soru hazırlanacak, ikincisinde test başlayacak, üçüncüsünde sonuçlar görülecek.
- Her sekmenin arka plan rengi ve yazı tipi ayarlanıyor.
- 06:41Soru Hazırlama Ekranı
- Soru hazırlama sekmesine soru, şıklar ve cevap için textbox'lar ekleniyor.
- Kaydet butonu ile sorular text dosyasına kaydedilecek.
- Testi yap sekmesine soru göstermek için label ve cevap seçmek için üç adet buton ekleniyor.
- 11:24Kodlama Hazırlığı
- Program çalıştırıldığında soru, şıklar ve doğru cevap text dosyasına kaydedilecek.
- Her sorunun sırasını belirtmek için global'de bir public statik integer değişken tanımlanacak.
- Dosya işlemleri için System.IO kütüphanesi kullanılacak.
- 13:37Soru Dosyası Oluşturma
- Soruları textbox'lardan alarak dosyaya yazma işlemi yapılıyor.
- Sorular, textbox1, textbox2, textbox3, textbox4 ve textbox5'ten alınarak birleştiriliyor.
- Her soru yazıldıktan sonra sıra numarası artırılıyor ve dosya kapatılıyor.
- 15:33Test Dosyası Test Ediliyor
- "4+6=?" gibi sorular girilerek dosyaya kaydediliyor.
- Dosyada soru, seçenekler ve doğru cevap bilgileri saklanıyor.
- Her yeni soru eklendiğinde sıra numarası bir artıyor.
- 16:35Test Yapma Ekranı Hazırlanıyor
- Başlat butonuna tıklandığında sorular dosyası açılacak ve ilk soru getirilecek.
- Başlat butonuna tıklandıktan sonra diğer butonlar pasif hale getirilecek.
- Formun load olayında buton3'ün enabled değeri false olarak ayarlanıyor.
- 18:08Tarih ve Saat Gösterimi
- Timer nesnesi kullanılarak her saniyede bir tarih ve saat gösterimi yapılıyor.
- Label7'e DateTime.Now.ToString() fonksiyonu kullanılarak tarih ve saat bilgisi yazdırılıyor.
- Tarih ve saat bilgisi sadece bilgi amaçlı gösteriliyor.
- 20:54İlk Soruyu Getirme
- Başlat butonuna tıklandığında ilk soru getirilecek.
- Soru okuma işlemi için "okuyucu soru oku" fonksiyonu kullanılacak.
- 21:15Dosya Okuma ve Soru Getirme
- Program, "sorular.txt" dosyasını uygulamanın başlangıç yolundan açarak ilk sorunun ilk satırını okuyor.
- Okunan satır "-" işaretlerinden ayrıştırılarak, soru ve şıklar ayrı değişkenlere atanıyor.
- Soru ve şıklar ekrandaki etiket ve butonlara atanarak kullanıcıya gösteriliyor.
- 24:06Cevap Kaydetme ve Sonraki Soru Getirme
- Kullanıcı cevap seçtikten sonra "sonraki" butonuna basıldığında, cevap dosyaya kaydedilecek.
- Dosyaya sorunun numarası ve seçilen cevap yazılacak.
- Program bir "soruGetir" fonksiyonu oluşturarak sonraki soruyu getirmeyi planlıyor.
- 25:36SoruGetir Fonksiyonu
- "soruGetir" fonksiyonu, dosyayı açıp satırları okuyarak soruları getiriyor.
- Her satır "-" işaretlerinden ayrıştırılıp, sıra numarası kontrol ediliyor.
- Eşleşen sıra numarasına sahip soru ekrana getiriliyor ve sıra numarası bir artırılıyor.
- 30:27Programın Çalışması
- Program başlatıldığında ilk soru ekrana getiriliyor.
- "Sonraki" butonuna basıldığında, program bir sonraki soruyu getirmeyi planlıyor.
- Programın tamamlanması için "sonraki" butonuna basıldığında ne olacağı kodlanmamış durumda.
- 31:17Soru Getir Fonksiyonu
- Soru getir fonksiyonu çalıştırıldığında dosya açılıyor, satır okunuyor ve boş değilse içeriye giriliyor.
- Satır parçalanıyor ve mevcut sıra numarası ile dosyadaki sıra numarası karşılaştırılıyor.
- Sıra numaraları eşleşiyorsa soru gösteriliyor, eşleşmiyorsa diğer satıra geçiliyor.
- 33:09Cevap Alma Fonksiyonu
- Cevap alma fonksiyonu oluşturuluyor ve radyo butonlarının işaretlenme durumuna göre cevap kontrol ediliyor.
- Radyo butonları işaretlendiğinde cevap değişkenine A, B veya C atanıyor.
- Cevap dosyasına "soru numarası: verilen cevap" formatında kaydediliyor.
- 38:09Testin Bitirilmesi
- Testin bitmesi için "son sıra" adında bir değişken tanımlanıyor ve son getirilen sorunun numarası bu değişkene atanıyor.
- Sonraki butona tıklandığında, mevcut sıra numarası son sıradan büyükse test bitiyor ve mesaj gösteriliyor.
- Test bittikten sonra sonuçlar bölümüne doğru ve yanlış cevap sayıları yazdırılacak.
- 44:09Program Hatasının Giderilmesi
- Programda başlat butonuna basıldığında önceki verilerin silinmesi için "delete" komutu kullanılıyor.
- Başlat butonuna basıldığında sırayı artırma hatası düzeltildi.
- "Sonraki" butonuna basıldığında sıra numarası önce artırılıp sonra işlem yapması için kod düzenlendi.
- 45:55Cevapların Kontrolü İçin Metot
- İki dosyayı (sorular ve cevaplar) açacak ve sıra numarasına göre karşılaştırma yapan bir metot yazılacak.
- Doğru ve yanlış cevap sayılarını tutmak için "public static integer" değişkenleri tanımlandı.
- Sorular ve cevaplar dosyalarını açmak için "StreamReader" kullanılıyor.
- 48:27Dosyaların Okunması ve Karşılaştırılması
- Dosyaların satırları okunuyor ve boş satır olmadığı sürece işlem devam ediyor.
- Soru ve cevap satırları "split" komutuyla parçalanıyor.
- Soru parçasının 5. indeksi ile cevap parçasının 1. indeksi karşılaştırılıyor.
- 51:50Sonuçların Yazdırılması
- Doğru ve yanlış cevap sayıları bulunduktan sonra dosyalar kapatılıyor.
- Sonuçlar "label8" ve "label9" etiketlerine yazdırılıyor.
- Test bittiğinde "sonraki" butonu pasif hale getiriliyor.