Speaker note: Bu sunum Ön Gereksinimler sayfasını izler; sondaki "Kendinizi sınayın" görevleri o sayfayla aynıdır.
Speaker note: Bu bir "olsa iyi olur" listesi değil — 1. haftanın C atölyesi bunların hazır olduğunu varsayar.
Speaker note: Bir görevde takılırsanız çözüm, ilgili CEN107/CEN108 konusuna dönmektir, görevi atlamak değil.
Speaker note: Beş konu, her biri CEN107/CEN108'de zaten öğretilmiş ve bu ders 1. haftadan itibaren yeniden kullanıyor.
Speaker note: Bu hazır değilse, 1. haftanın C atölyesi daha başlamadan zorlu geçer.
Speaker note: Hem vize hem final kontrol noktası, kısmen Git'in gerçekten nasıl kullanıldığına göre notlandırılır, yalnızca son koda göre değil.
Speaker note: %100 test kapsamı proje rehberinde sert bir kabul koşuludur — bu beceri buradan geliyor.
Speaker note: Şablon; derleme, test, dokümantasyon ve kapsamı zaten bağlamış durumda — sıfırdan kurmuyorsunuz, üzerine ekliyorsunuz.
Speaker note: Özyineleme "3. hafta konusu" değildir — bu ders boyunca, dosya organizasyonuna kadar tekrar tekrar başvurulan bir araçtır.
Speaker note: Vize projesi C, final projesi Java — işlenen veri yapılarının neredeyse tamamı doğrudan bu yapı taşları üzerine kurulur.
Speaker note: İlk derse gelmeden önce bunların hepsini rahatça hem okuyup hem yazabilmelisiniz, yalnızca tanımanız değil.
Speaker note: Final projesi her C veri yapısını jenerik kullanarak Java'ya taşır — bu kısa liste tam olarak o taşıma için gerekli olan şey.
Speaker note: Bu ikisi hatırlatılır, soğuktan bilindiği varsayılmaz — sunumun geri kalanı ise varsayılıyor.
Speaker note: Dizüstü bilgisayar gereklidir — ilk derse bunların hepsi kurulu olarak gelin.
Speaker note: Bunların hepsi ücretsiz ve platformlar arası — hazır gelmenin önünde bir lisans engeli yok.
Speaker note: Sekiz görev. Her birini önce kendi bilgisayarınızda deneyin, sonra bir sonraki slaytta cevaba bakın.
Speaker note: Cevabı görmeden önce p ile x'in gerçekte neyi paylaştığını düşünün.
Speaker note: Bütün dersin üzerine kurulduğu tek fikir bu: bir işaretçi ile işaret ettiği değişken aynı bellektir.
Speaker note: İki gösterim de tam olarak aynı bellek erişimini tanımlar.
Speaker note: Bu eşdeğerlik, C fonksiyon imzalarında dizi ve işaretçilerin neden birbirinin yerine geçebilir göründüğünü açıklar.
Speaker note: arr'ın gerçekte nerede yaşadığını ve fonksiyon döndüğü anda o belleğe ne olduğunu sorun.
Speaker note: "Dangling pointer" tam olarak Yığınlar ve Kuyruklar sunumunun 1. Hafta hatırlatma slaytında adlandırılan hata.
Speaker note: Bu, 2–3. haftalardaki her bağlı liste fonksiyonunun alacağı tam biçim.
Speaker note: Bu derste her özyinelemeli fonksiyon tam olarak bu biçimi alır: bir taban durum, sonra kesinlikle daha küçük bir problem üzerinde çağrı.
Speaker note: Bunu, metin üretecek olan fprintf ile karşılaştırın.
Speaker note: Dosya organizasyonu (13–14. hafta), tam olarak aynı fwrite/fread örüntüsü üzerine kurulur, yalnızca int yerine kayıtlarla.
Speaker note: List<Integer>'ın neyi kısıtladığını ve for-each döngüsünün onunla ne yaptığını düşünün.
Speaker note: Final projesinin F1 gereksinimi, her C yapısını tam olarak bu türden bir jenerik kullanarak Java'ya taşır.
Speaker note: "finally"in, istisna fırlatılsın ya da fırlatılmasın neyi garanti ettiğini düşünün.
Speaker note: Bu try/catch/finally biçimi, final projesinin dosya işleme kodunda yeniden karşınıza çıkar.
Speaker note: Bunlar proje rehberinde vize ve final kontrol noktaları için adı geçen tam olarak aynı iki şablon.
Speaker note: Sorunsuz bir 1. haftanın en iyi göstergesi, iki şablonda da önceden alınmış yeşil bir sonuçtur.
Speaker note: Bu iki sayfa/sunum, buradan sonraki doğal durak.