Projeye Genel Bakış
Coddy'nin Ruby Journey'sinin Mantık ve Akış bölümünün bir parçası. Ders 48 / 56.
Birbirlerinin içindeki aynı hash'i paylaşan bir dizi metot olarak küçük bir öğrenci kayıt sistemi oluşturacaksın. Library Manager'dan farklı bir yapı; bu sefer menü döngüsü yok, yalnızca geliştirmeye devam edeceğin işlevler var.
Durum, tek bir üst düzey hash içinde bulunur:
student_records = {}Her giriş, anahtar olarak adını kullanacak ve bir hash değeri öğrencinin yaşını, notlarını ve derslerini taşıyacak:
{
"Alice" => { age: 20, grades: [], courses: ["Math", "Physics"] }
}Her ders, bu hash üzerinde işlem yapan bir yöntem ekler: add_student, add_grade, average_grade, list_by_course, top_students.
Görev
BaşlangıçDosyanın en üstünde student_records adlı boş bir hash başlatın. Ardından testin şunu görmesi için inspect ile yazdırın:
{}Görevin tamamı bu kadar; bu ders yalnızca bundan sonra gelecek her şey için paylaşılan durumu oluşturur.
Kendin dene
# TODO: student_records = {} öğesini başlat ve inspect ile yazdır
Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Mantık ve Akış bölümündeki tüm dersler
1Dizeler Detaylı İnceleme
Dize Metotlarına Genel BakışDize EnterpolasyonuDizeler Üzerinde YinelemeBölme ve BirleştirmeTekrar - Dize Dokuyucu4Bloklar, Proc'lar ve Lambda'lar
Blok Nedir?do..end ve Süslü Parantezleryield Anahtar SözcüğüBlok ParametreleriProc'lar ve Lambda'larÖzet - Özel Yineleyici7Hash'ler 2. Bölüm
Varsayılanlarla Hash.newHash'ler Üzerinde Yinelemeİç İçe Hash'lerBirleştirme ve DönüştürmeTekrar - Frekans Sayacı10Proje - Öğrenci Kayıtları
Projeye Genel BakışÖğrenci Ekle5Enumerable Gücü
Seçme ve ReddetmeMap ZincirlemeReduce / Injectcount, all?, any?, none?group_by ve partitionsort_by, min_by, max_byTekrar - Veri HattıKendi başına pratik yap: Online Ruby derleyicisi