Hacettepe Üniversitesi | Mühendislik  Fakültesi | Akademik Birimler
Lisans Programı
1. Dönem | 2. Dönem | 3. Dönem | 4. Dönem | 5. Dönem | 6. Dönem | 7. Dönem | 8. Dönem

1. Dönem

Dersin Kodu Dersin Adı Teorik - Pratik - Kredi AKTS Dersin Dili
BİL131 Bilgisayar Programlama I 3-0-3 5 Türkçe
BİL137 Bilgisayar Lab. I 0-3-1 5 İngilizce
BİL191 Bilgisayar Mühendisliğine Giriş 2-0-2 İngilizce
MAT123 Matematik I 4-2-5 5 İngilizce
FİZ137 Fizik I 4-0-4 5 İngilizce
FİZ103 Fizik Lab. I 0-3-1 3 Türkçe
İNG111 Dil Becerileri I 2-0-2 2 İngilizce
TKD103 Türk Dili I 2-0-2 2 Türkçe

2. Dönem

Dersin Kodu Dersin Adı Teorik - Pratik - Kredi AKTS Dersin Dili
BİL132 Bilgisayar Programlama II 3-0-3 5 Türkçe
BİL138 Bilgisayar Lab. II 0-3-1 5 İngilizce
MAT124 Matematik II 4-2-5 5 İngilizce
FİZ138 Fizik II 4-0-4 5 İngilizce
FİZ104 Fizik Lab. II 0-3-1 3 Türkçe
İST192 Olasılık 2-2-3 3 Türkçe
İNG111 Dil Becerileri II 2-0-2 2 İngilizce
TKD104 Türk Dili II 2-0-2 2 Türkçe

3. Dönem

Dersin Kodu Dersin Adı Teorik - Pratik - Kredi AKTS Dersin Dili
BİL201 Mantıksal Tasarım 3-0-3 5 Türkçe
BİL233 Veri Yapıları ve Algoritmalar I 3-0-3 6 Türkçe
BİL235 Programlama Lab. I 0-5-2 6 İngilizce
BİL271 Kesikli Matematiksel Yapılar 3-0-3 5 Türkçe
İST293 İstatistik 3-0-3 4 Türkçe
İNG223 Yazma Becerileri 2-0-2 2 İngilizce
AİT203 Atatürk İlk. ve İnk. Tar. I 2-0-2 2 Türkçe

4. Dönem

Dersin Kodu Dersin Adı Teorik - Pratik - Kredi AKTS Dersin Dili
BİL212 Bilgisayar Yapısı 3-0-3 5 Türkçe
BİL220 Sistem Programlamaya Giriş 3-0-3 5 Türkçe
BİL234 Veri Yapıları ve Algoritmalar II 3-0-3 5 Türkçe
BİL236 Programlama Lab. II 0-5-2 6 İngilizce
MAT224 Doğ. Dönüşümler ve Diferansiyel Denklemler 3-0-3 5 İngilizce
İNG224 Sözlü İletişim Becerileri 2-0-2 2 İngilizce
AİT204 Atatürk İlk. ve İnk. Tar. II 2-0-2 2 Türkçe

5. Dönem

Dersin Kodu Dersin Adı Teorik - Pratik - Kredi AKTS Dersin Dili
BİL303 Sayısal Sistemler Lab. 0-3-1 3 Türkçe
BİL323 İşletim Sistemleri I 3-0-3 5 Türkçe
BİL339 Programlama Dilleri 3-0-3 5 Türkçe
BİL341 Yazılım Lab. I 0-5-2 5 İngilizce
BİL353 Veri Yönetimi 3-0-3 5 Türkçe
ELE293 Elektrik Devreleri 4-0-4 4 İngilizce

6. Dönem

Dersin Kodu Dersin Adı Teorik - Pratik - Kredi AKTS Dersin Dili
BİL324 İşletim Sistemleri II 3-0-3 5 Türkçe
BİL342 Yazılım Lab. II 0-5-2 6 İngilizce
BİL346 Sistem Geliştirme ve Modelleme 3-0-3 6 Türkçe
BİL354 Veri Tabanı Sistemleri 3-0-3 5 Türkçe
ELE294 Elektronik 4-0-4 5 İngilizce

7. Dönem

Dersin Kodu Dersin Adı Teorik - Pratik - Kredi AKTS Dersin Dili
BİL425 Veri İletişimi 3-0-3 5 İngilizce
BİL405 Özdevinirler Kuramı ve Biçimsel Diller 3-0-3 5 Türkçe
BİL407 Bilgisayar Bilimlerinde Matematiksel Teknikler 3-0-3 5 Türkçe
BİL421 Bilgisayar Grafiği 3-0-3 5 Türkçe
BİL431 Koşut İşlem 3-0-3 5 Türkçe
BİL445 Yazılım Mühendisliği Kavramları 3-0-3 5 İngilizce
BİL449 Proje I 0-9-3 5 İngilizce
BİL461 Yönetim Bilişim Sistemleri 3-0-3 5 Türkçe
BİL493 Tasarım Örüntüleri 3-0-3 5 Türkçe
BİL447 Yazılım Mühendisliği Lab. 0-5-2 6 Türkçe
BİL455 Veri Tabanı Lab. 0-5-2
6 Türkçe
BİL427 Veri İletişimi Lab. 0-5-2 Türkçe
MAT357 Topolojik Yapılar 3-0-3 4 İngilizce
FİZ333 Modern Fizik 3-0-3 4 İngilizce

8. Dönem

Dersin Kodu Dersin Adı Teorik - Pratik - Kredi AKTS Dersin Dili
BİL402 Mikroişleyiciler 3-0-3 5 İngilizce
BİL494 Bulanık Mantık 3-0-3 5 Türkçe
BİL406 Mikroişlem Lab. 0-5-2 5 İngilizce
BİL408 Hesaplama Kuramı 3-0-3 5 İngilizce
BİL410 Gelişmiş Bilgisayar Mimarileri 3-0-3 5 İngilizce
BİL426 Bilgisayar Ağları 3-0-3 5 Türkçe
BİL432 Algoritma Çözümleme 3-0-3 5 Türkçe
BİL438 Bilgisayar ve Ağ Güvenliği 3-0-3 5 Türkçe
BİL447 Yazılım Mühendisliği Lab. 0-5-2 6 Türkçe
BİL455 Veri Tabanı Lab. 0-5-2
6 Türkçe
BİL428 Bilgisayar Ağları Lab. 0-5-2 6 İngilizce
BİL450 Proje II 0-9-3 5 İngilizce
BİL478 Kombinatorik ve Çizge Kuramı 3-0-3 5 Türkçe
BİL482 Yapay Anlayışa Giriş 3-0-3 5 Türkçe
BİL496 Yazılım Mimarileri 3-0-3 5 Türkçe
PSİ101 Psikolojiye Giriş 3-0-3 4 Türkçe


Ders İçerikleri

BİL131 Bilgisayar Programlama I (3-0-3)

Bilgisayar programlamada temel kavramlar. Sorunları biçimselleştirme ve adım adım çözümleyerek algoritma geliştirme, iş akış çizgesi oluşturma. Yapısal programlama ile ilgili kavramlar. Veri türleri ve değişken tanımları. Temel komut yapıları. Koşul ve döngü komutları. İşlev kavramı. Programlama dillerinde tek ve çok boyutlu dizi. Kütük işlemleri. Göstergeler.

BİL132 Bilgisayar Programlama II (3-0-3)

Nesneye yönelik yaklaşımda temel kavramlar. Nesneye yönelik bir programlama dilinin öğrenimine giriş. Sınıf, nesne, kalıtım, çok biçimlilik, soyut sınıf ve arayüz, aykırı durum kavramları.

BİL137 Bilgisayar Lab. I (0-3-1)

BİL131 Bilgisayar Programlama I dersinde işlenen temel programlama kavramlarının pekiştirilmesi için örnek programların geliştirilmesi, bilgisayarda uygulanması ve rapor biçiminde belgelenmesi ile ilgili deneysel çalışmalar. Güncel yapısal programlama dili, derleyici ve hazır yazılımların öğretimi ve kullanımına da olanaklar ölçüsünde bu laboratuvar kapsamında yer verilir.

BİL138 Bilgisayar Lab. II (0-3-1)

BİL132 Bilgisayar Programlama II dersinde işlenen temel programlama kavramlarının pekiştirilmesi için örnek programların geliştirilmesi, bilgisayarda uygulanması ve rapor biçiminde belgelenmesi ile ilgili deneysel çalışmalar. Güncel bazı yapısal ve nesneye yönelik programlama dili, derleyici ve hazır yazılımların öğretimi ve kullanımına da olanaklar ölçüsünde bu laboratuvar kapsamında yer verilir.

BİL191 Bilgisayar Mühendisliğine Giriş (2-0-2)

Bilgisayarların ve bilgisayar kullanımının gelişmesi. Bilgisayar yapısı ve donanım ögeleri. Bilgisayar donanımı ve yazılımı ile ilgili temel kavramlar: Algoritmalar, veri yapıları, kütük düzenleme, programlama dilleri, sistem çözümleme ve tasarım, yazılım geliştirme, işletim sistemleri, veri iletişimi, veri tabanı sistemleri, yapay anlayış.

BİL201 Mantıksal Tasarım (3-0-3)

Sayısal sistemler, sayı sistemleri, ikili kodlar, yanlış bulan ve yanlış düzelten kodlar. Boole cebiri, anahtarlama cebiri, ikili işlemler ve Boole işlevleri. Boole işlevlerinin sadeleştirilmesi. Birleşimsel mantık, geçitler, birleşimsel devrelerin çözümleme ve tasarımı, geçitlerle devre tasarımı. Tümleşik devreler, çok kullanılan birleşimsel devre türleri, MSI yongaları ile birleşimsel devre tasarımı, ROM ve PLA. Zaman uyumlu dizisel devreler, bellek ögeleri, dizisel devre çözümleme ve tasarım yöntemleri. Yazmaçlar, sayaçlar, RAM ve zamanuyumsuz dizisel devreler.

BİL212 Bilgisayar Yapısı (3-0-3)

Bilgisayar donanımı ile ilgili temel matematiksel ve mantıksal kavramlar. Sayısal sistemler. Bilgisayar donanımının temel ögeleri. Ana İşlem Birimi: Birikeç, genel amaçlı yazmaç ve yığıt tabanlı mimariler, komut kavramları, komut işletimi. Adresleme yöntemleri. Ana belleğin yapısı. Ana Bellek parametreleri. Veri saklama aygıtları. Diğer giriş-çıkış birimleri. Simgesel programlamaya giriş.

BİL220 Sistem Programlamaya Giriş (3-0-3)

Simgesel programlama ögeleri. Kaynak ve amaç program. Yeniden girilir program. Yeniden çalıştırılır program. Adresleme teknikleri. Yordam tanımları, yordam iletişim teknikleri, makro olanakları. İşletim sistemi-simgesel dil ilişkisi, sistem çağrıları. Programlama teknikleri. Yükleyici, bağlayıcı. Mikroprogramlama. Tek ve çift geçişli simgesel çeviriciler.

BİL233 Veri Yapıları ve Algoritmalar I (3-0-3)

Asimtotik gösterim, başarım ölçümü, bellek/zaman karmaşıklığı. Özyineli algoritmalar, özyineli ilişkiler, algoritma analizi kavramına giriş. Çok boyutlu/üçgen/kuşak/seyrek matris gerçekleştirimi. Yığıt ve kuyruk veri yapıları, önişleç/araişleç/sonişleç ifadeler. Tek/çift bağlaçlı (döngülü) listeler.

BİL234 Veri Yapıları ve Algoritmalar II (3-0-3)

İkili ağaç, ikili arama ağacı, özyineli ve yinelemeli ikili ağaç dolaşımları, genelleştirilmiş listeler, kılavuzlu ikili ağaçlar. Yığınlar, öncelik kuyrukları, ayrık kümeler için veri yapıları. Çizge gerçekleştirimleri, önce derinliğine/genişliğine arama, yayılım ağaçları, en kısa yol problemi, düğüm/kenar aktif ağlar. Seçme, yerleştirme, kabarcık, sayma, çabuk, birleşmeli, yığın, basamak sıralama algoritmaları ve analizleri. AVL ağaçları.

BİL235 Programlama Lab. I (0-5-2)

Veri yapıları, sistem programlama, veri yönetimi ve istatistik gibi derslerde anlatılan kuramsal bilgilerin, uygulamalı olarak pekiştirilmesi. Bu laboratuvarda verilen soruların çözüm yöntemi genellikle bellidir. Öğrencilerden bir bilgisayar programı geliştirmesi ve yeterli düzeyde belgeleme ile sunması istenir. Güncel bazı programlama dili, derleyici ve hazır yazılımların öğretimi ve kullanımına da olanaklar ölçüsünde bu laborutuvar kapsamında yer verilir.

BİL236 Programlama Lab. II (0-5-2)

Veri yapıları, sistem programlama, veri yönetimi ve istatistik gibi derslerde anlatılan kuramsal bilgilerin, uygulamalı olarak pekiştirilmesi. Bu laboratuvarda verilen sorunların çözüm yöntemi genellikle bellidir. Öğrenciden bir bilgisayar programı geliştirmesi ve yeterli düzeyde belgeleme ile sunması istenir. Güncel programlama dili, derleyici ve hazır yazılımların öğretimi ve kullanımına da olanaklar ölçüsünde bu laboratuvar kapsamında yer verilir.

BİL271 Kesikli Matematiksel Yapılar (3-0-3)

Küme kuramı, ilişkiler ve işlevler. Sembolik mantık, predicate calculus. Birleşimsel matematik. Cebirsel yapılar. Boole cebiri, anahtarlama cebiri. Çizge kuramına giriş.

BİL303 Sayısal Sistemler Lab. (0-3-1)

Mantıksal geçitler, tümleşik devreler, Boole cebiri kuralları. Birleşimsel devreler, Boole işlevlerinin sadeleştirilmesi. Kod dönüştürücü, çoklayıcı, karşılaştırıcı ve paralel toplayıcı devreler. İkidurumlular ve dizisel devreler. Sayaçlar, yazmaçlar, seri toplayıcı devreler ve bellek ögeleri.

BİL323 İşletim Sistemleri I (3-0-3)

İşletim sisteminin tanımı. İş, görev, tek ve çok iş düzenleri, toplu işlem, etkileşimli işlem, çok görevli ve gerçek zamanlı işlem kavramları, sistem çağrı düzeneği, giriş/çıkış arabirimleri. Kesilme düzeneği, kesilmelerin yönetimi. Giriş/çıkışların programlanmasına ilişkin temel teknikler. Seçmeli ve kesilmeli G/Ç programlama, Doğrudan bellek erişimi. Adanmış sistem G/Ç program örnekleri. Görev yönetimi, bağlam ve görev anahtarlama, UNIX’te görevlerin ele alınışı, fork() ve exec(), görev durum ve kuyruk çizenekleri, görev yönetim algoritmaları. İşletim dizileri. Birlikte çalışan görevler. Görevler arası zamanuyumu, karşılıklı dışlama kavramı. Alt düzey zamanuyumlama işleçleri ve semaforlar. Üst düzey zamanuyumlama işlevleri. send() ve receive(). UNIX pipe ve FIFO türü kütükler. Görevler arası kilitlenme.

BİL324 İşletim Sistemleri II (3-0-3)

Ana bellek yönetimi: Tek ve bitişken, durgun ve devingen bölümlü bellek yönetimi, yer değiştirme, sayfalama, kesimleme, görüntü bellek. Kütük yönetimi: Kılavuz kütük yapıları, FAT, i-node yapıları, kütüklere yer atama yöntemleri, kütük yönetim sisteminin güvenirliği. Bilgisayar sistemlerinde güvenlik ve koruma: Bilgisayar sistemine girişlerin denetimi, erişim denetimi, şifreleme, bilgisayar virüsleri. Aygıt sürücüler: Aygıt türleri, aygıt sürücü yordamları ve işletimi, damga tabanlı aygıt sürücüler ve LINUX damga tabanlı aygıt sürücü örneği, öbek tabanlı aygıt sürücüler. Dağıtılmış işlem: TCP/IP sistem yazılımı, istemci-sunucu paradigması, socket programlama, istemci ve sunucu program örnekleri, dağıtılmış kütük yönetim sistemi, ağ düzeyi kütük paylaşımı, farklı kütük yönetim sistemlerinin bütünleşmesi.

BİL339 Programlama Dilleri (3-0-3)

Çağdaş dillerdeki komutsal ve nesneye yönelik yaklaşımların ve kavramların incelenmesi. Sözdizimsel özelliklerin biçimsel tanımı. Programlama deyimlerinin ve yapılarının anlamsal özellikleri. Veri ve tür kavramları. Devingen veri yapıları. Blok yapısı ve etkinlik alanı. Yordam ve parametre kavramları. İşlevler ve özyineleme. Modül kavramı ve modüler programlama. Aykırı durumların ele alınışı. Sınıf, nesne, yöntem kavramları. Bilgi saklama, devingen bağlanma, kalıtım özellikleri. İleti göndererek yapılmak istenenlerin belirtimi. Hazır sınıf tanımları ve çalışma zamanı ortamı.

BİL341 Yazılım Lab. I (0-5-2)

İkinci ve üçüncü sınıf derslerinde verilen kuramsal bilgilerin uygulamalı olarak pekiştirilmesi ve öğrencinin özgün sorunları çözme yeteneğinin geliştirilmesi amaçlanır. Bu laboratuvarda öğrenciler çalışmaları bireysel ya da grup olarak yürütürler. Sonuçta geliştirilen yazılım, kapsamı, kısıtlamaları ve verimlilik ölçütleri gözetilerek seçilen çözüm yöntemi ile birlikte ayrıntılarıyla belgelendirilir.Güncel programlama dili, derleyici ve hazır yazılımların öğretimi ve kullanımına da olanaklar ölçüsünde bu laboratuvar kapsamında yer verilir.

BİL342 Yazılım Lab. II (0-5-2)

Genellikle 3.sınıf derslerinde verilen kuramsal bilgilerin, uygulamalı olarak pekiştirilmesi ve öğrencinin sorunları çözme yeteneğinin geliştirilmesi amaçlanır. Bu laboratuvarda öğrenciler çalışmaları bireysel ya da grup olarak yürütürler. Sonuçta geliştirilen yazılım, kapsamı, kısıtlamaları ve verimlilik ölçütleri gözetilerek seçilen çözüm yöntemi ile birlikte ayrıntılarıyla belgelendirilir. Güncel programlama dili, derleyici ve hazır yazılımların öğretimi ve kullanımına da olanaklar ölçüsünde bu laboratuvar kapsamında yer verilir.

BİL346 Sistem Geliştirme ve Modelleme (3-0-3)

Sistem kavramı. Bilişim sistemi çözümleme ve modelleme. Olurluk çalışması. Yönetim işlevi. Veri ve bilgi kavramları. Bilgi gereksinimlerinin saptanması. Sistem çözümleme ve modelleme araçları. Sistem modellemede kullanılan diller. Bilişim sistemlerinin sınıflandırılması. Bilgisayar destekli yazılım mühendisliği araçları. Kullanıcı etkileşiminin sağlanması. Yazılım bakımının önemi. Bilişim sistemi örneklerinin incelenmesi.

BİL353 Veri Yönetimi (3-0-3)

Temel kütük kavramları. Fiziksel kütük düzenleme. Kütük yönetim sistemi ve türleri. Dizinler ve türleri. Anahtarlama ile dizinleme ve türleri. Ağaç yapılı dizinler. Çok boyutlu dizinler. Devrik dizinler.

BİL354 Veri Tabanı Sistemleri (3-0-3)

Tanımlar ve temel kavramlar: Veri tabanı, veri tabanı yönetim sistemi, veri tabanı mimarisi, şemalar ve veri bağımsızlığı. Veri modelleri: Varlık bağıntı modeli, sıradüzensel model, ağ modeli, ilişkisel model ve nesneye yönelik model. Bütünlük kısıtlamaları ve ilişkisel tasarım: Alan kısıtlamaları, referans kıstlamaları, nitelikler arası bağımlılıklar, ilişkiler için normal formlar, tasarım ölçütleri. İlişkisel diller: İlişkisel cebir ve ilişkisel hesap. SQL standart ilişkisel dil: Veri tanımlama, veri işleme, veri tabanı yönetimi olanakları ve başlıca komutları. Nesneye yönelik veri tabanları veri modelleme ve dil özellikleri. Örnekler: Veri modelleme, veri tabanı tasarlama, veri tabanı tanımlama ve sorgulama örnekleri.

BİL425 Veri İletişimi (3-0-3)

Bilgisayar ağlarının gerekleri, ISO referans modeli. TCP/IP, ağ türleri ve topolojileri. Fiziksel katman: Fiziksel iletişim ortamları, elektriksel imlerin zayıflaması ve bozulması, Fourier serileri ve modülasyon kavramı, sıklık ve zaman bölümlü çoklama, modülasyon yöntemleri. Modemler, bazı bağlantı standartları, bit, damga ve çerçeve zamanuyumu. Veri bağlantı katmanı: Idle RQ, sürekli RQ algoritmaları, Kayan pencere düzeneği, HDLC ve türevi protokollar. Yerel ağlar, Ethernet ve Token Ring. Geniş alan ağları, PPP, ATM ve Frame Relay, telekomünikasyon firmalarının sunduğu hizmetler ve standartlar.

BİL402 Mikroişleyiciler (3-0-3)

Mikroişleyicilere ilişkin temel kavramlar. 8088/86 işleyicisi. Bellek ögeleri. Çalışma ilkeleri ve türlerinin incelenmesi. Adres evreni ve bellek tasarımı. Mikroişleyiciler ve G/Ç kavramları. Kesilme yapıları, kesilme önceliği kodlayıcılar. Doğrudan bellek erişimi. G/Ç arabirimi tasarımı: koşut (8155), ardıl (8251) G/Ç arabirimlerininin incelenmesi. Mikroişleyici tabanlı sistem tasarımına giriş. Mikrodenetleyiciler.

BİL494 Bulanık Mantık (3-0-3)

Bulanık mantık kuramının temelleri. Bulanık kümeler, bulanık ilişkiler, bulanık çizgeler ve bulanık aritmetik. Bulanık koşul kuralları. Bulanık çıkarsama ve yaklaşık sebeplendirme. Bulanık mantık kuramının olasılık ve ihtimal kuramları ile ilişkisi. Bulanık kümeleme. Bulanık kümelerin; karar verme, örüntü tanıma, veri tabanı, kontrol ve veri madenciliği uygulamaları. Bulanık mantık ve yapay anlayış.

BİL405 Özdevinirler Kuramı ve Biçimsel Diller (3-0-3)

Sonlu özdevinirler: Deterministik ve deterministik olmayan özdevinir modelleri, l-geçişleri, Mealy ve Moore makineleri, sadeleştirme yöntemi. Düzgün kümeler ve düzgün deyimler, sonlu özdevinir-düzgün deyim ilişkisi. Biçimsel dilbilgisi ve diller, dilbilgisi ve dil sınıfları ve özellikleri. Düzgün dilbilgisi ve diller, düzgün dilbilgisi – sonlu özdevinir ilişkisi. Bağlamdan-bağımsız dilbilgisi ve diller. Yığıtlı özdevinir modeli, yığıtlı özdevinir – bağlamdan bağımsız dilbilgisi ilişkisi. Turing makineleri ve kısıtlamasız diller. Ayrıştırma işlemleri: Ayrıştırma türleri, yukarıdan-aşağıya ve aşağıdan-yukarıya ayrıştırma, bağlamdan-bağımsız diller için LL(k) ve LR(k) ayrıştırma, LR(k) ayrıştırmada sonlu özdevinir modelinin kullanılması.

BİL406 Mikroişlem Lab. (0-5-2)

80286 tabanlı deney setleri ile BİL402 Mikroişleyiciler dersinde işlenen konulara ilişkin laboratuvar çalışmaları.

BİL407 Bilgisayar Bilimlerinde Matematiksel Teknikler (3-0-3)

Temel matematik teknikler. Evrişim integrali ve evrişim toplamı. Determinantlar. Vektör alanları. Integral Dönüşümleri. Akıllı veri analizi ve sınıflandırılması. İstatistiksel yöntemler. Zaman serileri. Olasılıksal yöntemler. Yapay sinir ağları. Bulanık mantık. Örnek uygulamalar.

BİL408 Hesaplama Kuramı (3-0-3)

Hesaplama kuramında temel kavramlar. Sonlu özdevinirler ve düzenli diller. Hesaplamanın evrensel modeli. Hesaplanabilirlik kuramı. Karmaşıklık kuramı. İspatı zor problemler. İspatlar.

BİL410 Gelişmiş Bilgisayar Mimarileri (3-0-3)

Genel tanım ve kavramlar. Teknolojik gelişmeler ve bilgisayar mimarisine etkileri. Ana bellek mimarileri: ´Cache´ bellekler, görüntü bellek gerçekleştirimi. Ana işlem birimleri ve ´Pipeline´ yapıları. RISC mimarisi, vektör bilgisayar mimarileri, çok işleyicili sistemler.

BİL421 Bilgisayar Grafiği (3-0-3)

Bilgisayar grafiğine giriş. Grafik göstericilerin ve donanımlarının çalışma ilkeleri. Nokta-çizim teknikleri, Doğru-çizim teknikleri, iki boyutlu dönüşümler. Pencere teknikleri. Üç boyutlu grafiğe giriş ve dönüşüm teknikleri. Gölgeleme. Etkileşimli grafik donanımı ve yazılımları.

BİL431 Koşut İşlem (3-0-3)

Koşut hesaplamanın tarihçesi ve temelleri. Koşut işlem sistemlerinin sınıflandırılması. Koşut ve vektör algoritmaların çözümlenmesi ve tasarımı. Farklı mimarilere göre koşut algoritma geliştirme. Koşut algoritmaların performans ve karmaşıklıkları. Koşut algoritmalarla uygulama örnekleri.

BİL426 Bilgisayar Ağları (3-0-3)

Veri aktarımı temel kavramları. Bilgisayar ağlarına genel bakış. ISO-OSI modeli tanımı. Devre anahtarlama, paket anahtarlama. Ağ topolojileri. Fiziksel katman. İletişim teknikleri. Veri bağlantı katmanı, akış kontrol ve hata düzeltme. Ağ katmanı. Yerel alan ağları. Genel olarak kullanılan bilgisayar ağlarının örnekleri ve protokolları.

BİL432 Algoritma Çözümleme (3-0-3)

Asimtotik büyüme oranları ve asimtotik gösterimler. Başarım karşılaştırması ve analizi için temel araçlar. Özyineli düşünme, özyineli ilişkiler. En kötü, ortalama ve en iyi durum analizi. Master teoremin kullanımı. Böl ve yönet tekniğine bir örnek: n bitlik iki sayının çarpımı. Sıralama ve seçme konusuna genel bir bakış: Doğrusal zamanda sıralama (basamak, sayma, ve paket sıralama), sıralamada alt sınır, yığın kurmanın analizi, yığın sıralama, yerleştirme ve çabuk sıralamanın ortalama durum analizleri, turnuva yöntemi, k-inci en küçük elemanı doğrusal zamanda bulma. Dinamik programlama: Matris serisi çarpımı, en uzun ortak alt dizi.

BİL433 Internet Programlama Lab. (0-5-2)

Genel olarak bilgisayar ağlarında ve internette kullanılan tüm katmanlara ait temel teknolojilerin, protokolların, yazılımların gerçekleştirim uygulamaları: Donanım katmanında veri iletişimi temelleri, yazılım katmanında veri iletişimi temelleri, farklı ortamlarda ve ortamlar arası veri iletişimi, çok uçlu ortamlarda veri iletişimi, karşılaşılan sorunlar ve çözümleri, temel internet protokollarının incelenmesi ve ağ sunucuları kapsamında gerçekleştirilmesi.

BİL438 Bilgisayar ve Ağ Güvenliği (3-0-3)

Ağ güvenliğine giriş ve temel kavramlar. Risk değerlendirmesi, güvenlik politikası, tehditlerin sınıflandırılması. Parolalar, erişim izinleri. Şifreleme teknikleri, geleneksel yöntemler, açık anahtar yöntemleri, asıllama, sayısal imza, protokollar, şifreleme yazılımları. TCP/IP protokol ve hizmetlerinde güvenlik, güvenlik duvarları, sanal özel ağlar. Saldırı tespit sistemleri.

BİL445 Yazılım Mühendisliği Kavramları (3-0-3)

Yazılım geliştirme proje planı. Yazılım geliştirme proje yönetimi. Yazılım ölçütleri ve kestirim teknikleri. Yazılım gerçekleştirme ve belgeleme. Yazılım sınama. Yazılım kurumu ve uygulamaya geçiş. Yazılım geliştirme standartları. Yazılım kalite güvencesi. Risk çözümleme. Yazılım bakımı. Yapılandırma yönetimi. Bilgisayar destekli yazılım modelleme araçları.

BİL428 Bilgisayar Ağları Lab. (0-5-2)

Bu laboratuvarda, herbiri 6 adet kişisel bilgisayar sisteminden oluşan 4 adet yerel ağ, 4 adet 24 kapılı anahtar, 4 adet yönlendirici ve 1 adet FR/ATM geniş alan ağı anahtarından oluşan bir laboratuvar donanımı kullanılmaktadır. Bu donanım üzerinde, yerel ve geniş alan ağları, altağlar, adresleme, yönlendirici ve anahtar işletim sistemi (Cisco-IOS), yönlendirici ayarları, yerel ağ anahtarları ve VLAN ayarları, FR/ATM geniş alan ağı anahtarı ayarları, topoloji keşfi, TCP/IP protokoluna dönük temel kavramlar, ACL (Access Control Lists), spanning Tree, RIP, BGP Protokolları, HDLC, PPP, Frame Relay, ATM gibi geniş ağ altyapı ve protokolları, IP telefon sistemi ve VoIP teknolojisi ve ilgili standartlar gerçek bir ağ ortamında incelenmekte ve bunlarla ilgili kavramların pekişmesini sağlayacak haftalık deneyler yürütülmektedir.

BİL447 Yazılım Mühendisliği Lab. (0-5-2)

Öğrencilerin var olan orta boy yazılımların tasarım ilkeleri, belgeleme yöntemleri ve yanlış bulma yöntemleri üzerinde deney kazanmaları için uygulamalı çalışmalardır. Yeterli sayıda öğretici nitelikte proje kaynak programı bulunmadığında öğrenciler ara boy yazılımların tasarımı, yazılması, belgelenmesi ve sınanması için sıfırdan başlayan çalışmalar yapabileceklerdir.

BİL449 Proje I (0-9-3)

Bilgisayar yazılımı ve donanımı konularında, öğrencinin tanımlanmış bir proje kapsamında tasarım ve gerçekleştirim çalışmalarını tamamlayarak sonuçlarını bir raporla sunduğu ve öğrencinin mühendisçe davranışını geliştirmesinin amaçlandığı güz dönemi proje dersidir.

BİL450 Proje II (0-9-3)

BİL449 ile genel olarak aynı amaca sahip olmakla birlikte, BİL449’da tanımlananlara göre daha ileri konularda ya da Bil449’da tanımlanan projelerin devamı niteliğinde proje tanımları öngörülür.

BİL455 Veri Tabanı Lab. (0-5-2)

Gelişmiş veri tabanı yönetim sistemleri ile veri tabanı tasarımı. Veri tabanı tanımı; tanımlanan bu veri tabanı üzerinde sorgulama ve uygulama geliştirme çalışmalarıdır. Aynı zamanda veri tabanı teknolojileri ile ilintili başlıklarda araştırma çalışmaları ve bu çalışmaların sunumu da bu dersin kapsamında yer almaktadır.

BİL461 Yönetim Bilişim Sistemleri (3-0-3)

Yönetim Bilişim Sistemlerine (YBS) genel bakış, bir örgüt geliştirme aracı olarak YBS yaklaşımı. Kavramsal temeller: Bilgi, sistem, planlama, denetim, örgüt ve yönetim kavramları, bilgi işleyici olarak insan, karar alma süreci, seçenekler arasından seçme yöntemleri. YBS’nin yapısı. İşlemler, planlama, denetim, karar alma ve yönetim düzeylerinde YBS desteği, karar-destek sistemleri, bilgi gereksinimlerinin belirlenmesi. Bilişim sistemleri planlama, tasarım, gerçekleştirim ve işletimi.

BİL478 Kombinatorik ve Çizge Kuramı (3-0-3)

Temel kavramlar: Sıradüzen, birleşim. Binom katsayıları. Kapsama-dışlama kavramı. Özyineli ilişkiler. Çizge kuramında temel kavramlar, çizge gösterimleri. Erişilebilirlilik. Alt Çizgeler. Eşbiçimlilik. Bitişiklilik. Düzlemlilik. Boyama değeri. Eular çizgesi, Hamilton çizgesi. Çizge uygulamaları.

BİL482 Yapay Anlayışa Giriş (3-0-3)

Bir problemin yapay anlayış, yapay sinir ağı öğrenme problemi olması için ölçütler ve sınama yöntemleri. Üretim sistemleri, yapay sinir ağı, bulanık mantık, genetik program yaklaşımları. Üretim sistemlerinde gösterimler/seçimi, arama stratejileri ve buluşsal işlevler, geriye ve ileriye doğru budama. Öğrenme ve türleri, yapay sinir ağları, küme üyeliğinin Bayes yaklaşımı ile öğrenilmesi. Sahte negatif ve sahte pozitif kavramları. Sayısal olmayan özelliklerle belirlenen örüntüler, işlevsel bağlaç ağı, ileri besleme/hata geri yayılımı ile öğrenme. Uzman sistemlere genel bakış, uzman sistemlerin kollektif sınanması. Doğal dil anlamada temel sorunlar ve anlamsal çözümleme, evren bilgisi, gerekli bilgi gösterim yöntemleri.

BİL493 Tasarım Örüntüleri (3-0-3)

Tasarım örüntüsü tanımı. Tasarım örüntüleri kullanma gereksinimi. Tasarım örüntüleri sınıflandırması (Yaratıcı, yapısal, davranışsal tasarım örüntüleri gibi). Tasarım örüntülerinin ve örnek uygulamaların incelenmesi.

BİL496 Yazılım Mimarileri (3-0-3)

Temel mimari kavramları. Yüksek düzeyli mimari örüntüleri. Mikro mimari örüntüleri. Seçilmiş örüntüler. Dağıtık sistem örüntüleri. Servis örüntüleri. Başarım ve güvenilirlilik örüntüleri. Gerçek zamanlı sistem örüntüleri.

BİL427 Veri İletişimi Lab. (0-5-2)

Bu laboratuvarda, herbiri 6 adet kişisel bilgisayar sisteminden oluşan 4 adet yerel ağ, 4 adet 24 kapılı anahtar, 4 adet yönlendirici ve 1 adet FR/ATM geniş alan ağı anahtarından oluşan bir laboratuvar donanımı kullanılmaktadır. Bu donanım üzerinde, yerel ve geniş alan ağları, altağlar, adresleme, yönlendirici ve anahtar işletim sistemi (Cisco-IOS), yönlendirici ayarları, yerel ağ anahtarları ve VLAN ayarları, FR/ATM geniş alan ağı anahtarı ayarları, topoloji keşfi, TCP/IP protokoluna dönük temel kavramlar, ACL (Access Control Lists), spanning Tree, RIP, BGP Protokolları, HDLC, PPP, Frame Relay, ATM gibi geniş ağ altyapı ve protokolları, IP telefon sistemi ve VoIP teknolojisi ve ilgili standartlar gerçek bir ağ ortamında incelenmekte ve bunlarla ilgili kavramların pekişmesini sağlayacak haftalık deneyler yürütülmektedir.

Web Sitesi Sorumlusu: Selman Bozkır | Yasal Sorumluluk Sınırı
Hacettepe Üniversitesi Bilgisayar Mühendisliği Bölümü
06800 Beytepe Ankara