DERS BİLGİLERİ
Ders Kodu Yarıyıl Ders Süresi Kredi AKTS
Compilers CEN   408 8 3 3 6

Ön Koşul Dersleri
Ders Hakkında Önerilen Diğer Hususlar None

Dersin Dili İngilizce
Dersin Seviyesi Lisans
Dersin Türü Seçmeli
Dersin Koordinatörü Prof. Dr. Selma Ayşe ÖZEL
Dersi Verenler
 
Dersin Yardımcıları
Dersin Amacı
Programlama dilleri için gramer okuyabilmek, yazabilmek; derleyici sistemlerinin nasıl çalıştığını öğrenmek.
Dersin İçeriği
Gramer okuma ve yazma, sözlüksel analiz, çözümleme, anlamsal analiz, sembol tabloları, çalışma zamanı analizi, kod üretme, optimizasyon, basit bir dil için derleyici tasarlama.

Dersin Öğrenme Kazanımları
1) Bir programlama dili için geliştirilmiş bir grameri okuyabilme, yeni gramer yazabilme.
2) Bir derleyicinin ana bileşenlerinin neler olduğunu ve nasıl çalıştığını öğrenme.
3) Basit bir dil için derleyici tasarlayabilme.
4)
5)
6)
7)
8)
9)
10)
11)
12)
13)
14)
15)


DERSİN PROGRAM KAZANIMLARINA KATKISI
NoTemel öğrenme KazanımlarıKatkı Düzeyi
12345
1
1. Matematik, fen bilimleri ve bilgisayarla ilgili mühendislik konularında yeterli altyapıya sahip olma; bu alanlardaki kuramsal bilgileri beraber kullanabilme
2
2. Karmaşık mühendislik problemlerini saptama, tanımlama, formüle etme ve çözme becerisi; bu amaçla uygun analitik yöntemler ve modelleme tekniklerini seçme ve uygulama
3
3. Karmaşık bir sistemi, sistem bileşenini ya da süreci analiz etme ve istenen gereksinimleri karşılamak üzere gerçekçi kısıtlar altında tasarlama becerisi; bu doğrultuda modern tasarım yöntemlerini uygulama becerisi
4
4. Mühendislik uygulamaları için gerekli olan modern teknik ve araçları geliştirme, seçme ve kullanma becerisi; bilişim teknolojilerini etkin kullanma becerisi
5
5. Karmaşık bilgisayar mühendisliği problemlerin çözümüne ilişkin deney tasarlama, deney yapma, veri toplama, sonuçları analiz etme ve yorumlama becerisi
6
Bireysel olarak ve disiplin içi/çok disiplinli takımlarda etkin çalışabilme becerisi, sorumluluk alma ve özgüven
7
Bilgiye erişebilme, kaynak araştırması yapabilme ve bilgi kaynaklarını kullanabilme becerisi
8
Yaşam boyu öğrenmenin gerekliliği bilinci; bilim ve teknolojideki gelişmeleri izleme ve kendini sürekli yenileme becerisi
9
9. Türkçe sözlü ve yazılı etkin iletişim kurma, ve en az bir yabancı dilde teknik yayın okuyup anlayabilme, rapor hazırlama ve sunum yapma becerisi
10
Mesleki ve etik sorumluluk bilinci; mühendislik uygulamalarında kullanılan standartlar hakkında bilgi
11
11. Proje yönetimi, işyeri uygulamaları, çalışanların sağlığı, çevre ve iş güvenliği, ve mühendislik uygulamalarının hukuksal sonuçları hakkında farkındalık
12
12. Mühendislik çözümlerinin ve uygulamalarının evrensel ve toplumsal boyutlardaki etkileri, girişimcilik ve yenilikçilik, ve çağın sorunları hakkında bilgi sahibi olmak

DERS AKIŞI
HaftaKonularÖn Hazırlık Yöntem
1 Derleyici sistemlerine giriş Ders notlarının okunması Anlatım
Soru-Cevap
2 Sözlüksel analiz: Düzenli ifadeler, Lex Ders notlarının okunması Anlatım
Soru-Cevap
3 Sözlüksel analiz: Otomata Ders notlarının okunması Anlatım
Soru-Cevap
4 Bağlamdan Bağımsız Gramerler Ders notlarının okunması Anlatım
Soru-Cevap
5 Yukarıdan aşağıya ve LL inceleme Ders notlarının okunması Anlatım
Soru-Cevap
6 Aşağıdan yukarıya, SLR, LR inceleme Ders notlarının okunması Anlatım
Soru-Cevap
7 Yacc sistemi Ders notlarının okunması Anlatım
Soru-Cevap
8 Ara Sınav Ders notlarının okunması Yazılı Sınav
9 Soyut yazım kuralı ağacı Ders notlarının okunması Anlatım
Soru-Cevap
10 Tip kontrolü Ders notlarının okunması Anlatım
Soru-Cevap
11 Assembly dili Ders notlarının okunması Anlatım
Soru-Cevap
12 Kode üretme Ders notlarının okunması Anlatım
Soru-Cevap
13 Çalışma zamanı Ders notlarının okunması Anlatım
Soru-Cevap
14 Optimizasyon Ders notlarının okunması Anlatım
Soru-Cevap
15 Proje sunumları Ders notlarının okunması, proje sunumu hazırlanması. Grup Çalışması
Proje / Tasarım
16-17 Yarıyıl Sonu Sınavları Ders notlarının okunması Yazılı Sınav

KAYNAKLAR
Ders Notu
Diğer Kaynaklar