|
YZM3009 | Sistem Programlama | 2+1+0 | AKTS:4 | Yıl / Yarıyıl | Güz Dönemi | Ders Duzeyi | Lisans | Yazılım Şekli | Zorunlu | Bölümü | YAZILIM MÜHENDİSLİĞİ BÖLÜMÜ | Ön Koşul | Yok | Eğitim Sistemi | Yüz yüze , Uygulama | Dersin Süresi | 14 hafta - haftada 2 saat teorik ve 1 saat uygulama | Öğretim Üyesi | Öğr. Gör. Dr Celal ATALAR | Diğer Öğretim Üyesi | | Öğretim Dili | Türkçe | Staj | Yok | | Dersin Amacı: | Bu dersin amacı ; Unix işletim üzerindeki bash script üzerinde kod yazımını ve sistem üzerinde bulunan derleyicileri kullanarak (gcc, g++) programlar geliştirmektir. Ek olarak sistem üzerinde belirli bir yönetimi kazandırmayı da hedeflemektedir. |
Öğrenim Kazanımları | PÖKK | ÖY | Bu dersi başarı ile tamamlayan öğrenciler : | | | ÖK - 1 : | Komut satırından shell çevrelerini yönetebilme | 1,3,8 | 1, | ÖK - 2 : | Shell ve sistem komutlarını açıklanabilir. | 1,3,8 | 1, | ÖK - 3 : | Çeşitli sistem görevleri için shell scriptleri yazabilir. | 1,3,8 | 1, | ÖK - 4 : | Düzenli ifadeleri kullanarak herhangi bir metin dosyası verisini işlenebilir. | 1,3,8 | 1, | ÖK - 5 : | Yüksek seviyeli programlama dillerinde programlar yazmak için yazılım geliştirme araçlarını kullanabilir. | 1,3,8 | 1, | ÖK - 6 : | C yada C++ programları içerisinden system çağrılarını kullanabilir. | 1,3,8 | 1, | ÖK - 7 : | Sistem çağrıları yardımıyla dosya ve süreç alt sistemlerini yönetebilir. | 1,3,8 | 1, | PÖKK :Program öğrenim kazanımlarına katkı, ÖY : Ölçme ve değerlendirme yöntemi (1: Yazılı Sınav, 2: Sözlü Sınav, 3: Ev Ödevi, 4: Laboratuvar Çalışması/Sınavı, 5: Seminer / Sunum, 6: Dönem Ödevi / Proje),ÖK : Öğrenim Kazanımı | |
1. Unix' e Giriş , Unix Sistem Yapısı ve Komut Sistemi
2. Unix Dosya Sistemi ,Dosya İzinleri
3. Metin Düzenleme Editörleri ve Kullanımı
4. Giriş/ Çıkış Yönlendirme ve Pipe Yapıları
5. Düzenli İfadeler
6. Unix Pencere Sistemi
7. Unix Shell Ortamı ve Shell Çevre Değişkenleri
8. Shell Script Giriş
9. Shell Script Temelleri
10. Gelişmiş Shell Script
11. Yazılım Geliştirme ve Debug
12. Dosya Yönetimi ve Uygulamaları
13. Süreç Yönetimi
14. Temel Unix Sistem Yönetimi |
|
Haftalık Detaylı Ders Planı | Hafta | Detaylı İçerik | Önerilen Kaynak | Hafta 1 | Unix' e Giriş , Unix Sistem Yapısı ve Komut Satırı Sistemi, Unix'in Kısa Tarihi, Bazı Unix Komutları | | Hafta 2 | Unix Dosya Sistemleri, Unix Dosya Hiyerarşisi, Working ve Home Dizinleri, Dosya Tipleri, Dosya İzinleri, Dosya İçerikleri | | Hafta 3 | Metin Düzenleme Editörleri ve Kullanımı, vi Editörü ve Komutları | | Hafta 4 | Giriş/ Çıkış Yönlendirme ve Pipe Yapıları | | Hafta 5 | Düzenli İfadeler , grep ve egrep Komutları | | Hafta 6 | Unix Pencere Sistemi | | Hafta 7 | Unix Shell Ortamı ve Shell Çevre Değişkenleri (PATH, HOME, USER vs), Bash Script, Aliaslar | | Hafta 8 | Shell Script Giriş, Script Çalıştırma, Shell Değişkenleri (Sayılar, Diziler, Katarlar), Komut Satırı Argümanları, if Deyimi, if-else Deyimi, Mantıksal Operatörler ve Test Komutu, case Deyimi | | Hafta 9 | Arasınav | | Hafta 10 | Shell Script Döngüler (for, while, until, select), printf Argümanları ve Formatlı Yazdırma, tee Komutu, Dosya İşaretçisi ile Dosya İlişkendirme, Dosya Okuma | | Hafta 11 | Shell Script'de Fonksiyon Yazımı ve Kullanımı, Fonksiyonlarda Parametre Geçişleri, Fonksiyonlarda Ortak Veri Kullanımı, echo Komutu, echo Komutunun Parametrelerinin Kullanımı | | Hafta 12 | Yazılım Geliştirme ve Debug, sed ve awk | | Hafta 13 | Dosya Yönetimi ve Uygulamaları , Dosya Açma İşlemi (fopen) ve Dosya Açma Argümanları , Dosyaya Yazma (fprintf, fputs, fputc), Dosyadan Okuma (fgets, fgetc), Dosya İçeriğinde Arama (fseek) | | Hafta 14 | Süreç Yönetimi (ps, top, kill, nice) , Süreç Oluşturma (fork), exec Komutu | | Hafta 15 | Temel Unix Sistem Yönetimi, Süper Kullanıcı (root), Dosya Sistemi Komutları (mount, umount, fsck, sync) | | Hafta 16 | Dönem sonu sınavı | | |
1 | Haviland, K., Gray, D., Salama, B. 1999; UNIX System Programming, 2nd ed., Addison-Wesley, 350 p. | | 2 | Kochan, S. G., Wood, P. 2003; UNIX Shell Programming, 3rd ed., Sams, 460 p. | | |
1 | Robbins, K. A., Robbins, S. 1996; Practical UNIX Programming, Prentice Hall, 658 p. | | 2 | Michael, R. K. 2003; Mastering UNIX Shell Scripting, Wiley, 680 p. | | |
Ölçme Yöntemi | Yöntem | Hafta | Tarih | Süre (Saat) | Katkı (%) | Arasınav | 9 | | 1 | 50 | Dönem sonu sınavı | 16 | | 2 | 50 | |
Öğrenci Çalışma Yükü | İşlem adı | Haftalık süre (saat) | Hafta sayısı | Dönem toplamı | Yüz yüze eğitim | 2 | 14 | 28 | Sınıf dışı çalışma | 2 | 10 | 20 | Arasınav için hazırlık | 3 | 5 | 15 | Arasınav | 1 | 1 | 1 | Uygulama | 1 | 14 | 14 | Dönem sonu sınavı için hazırlık | 4 | 8 | 32 | Dönem sonu sınavı | 2 | 1 | 2 | Toplam Çalışma Yükü | | | 112 |
|