MÜHENDİSLİK FAKÜLTESİ

Endüstri Mühendisliği

 

Duyurular


 

SOSYAL MEDYA


 

SE 310 | Ders Tanıtım Bilgileri

Dersin Adı
İleri C++: Şablonlar ve Soysal Programlama
Kodu
Yarıyıl
Teori
(saat/hafta)
Uygulama/Lab
(saat/hafta)
Yerel Kredi
AKTS
SE 310
Güz/Bahar
3
0
3
5

Ön Koşul(lar)
Yok
Dersin Dili
İngilizce
Dersin Türü
Seçmeli
Dersin Seviyesi
Lisans
Dersin Koordinatörü
Öğretim Eleman(lar)ı
Yardımcı(lar)ı -
Dersin Amacı C++ esnek tasarımı, ölçeklenebilirliği ve verimliliği sayesinde endüstride en çok kullanılan programlama dillerinden biri durumundadır. Bu dersin temel amacı öğrencilerin C++ bilgilerini ve programlama yeteneklerini geliştirmek ve onları C++ dilinde yer alan en güncel yeniliklerle tanıştırmaktır. Bu yeniliklerden bazıları başta Standard Template Library (STL) kütüphanesi olmak üzere soysal programlama teknikleri ve seçilmiş Boost C++ kütüphaneleridir. Bu dersin konuları arasında şablonlarla programlama, ileri şablon programlama teknikleri, soysal programlama, özelleştirilmiş şablonlar kullanma, tip özellikleri (traits), C++ ile GUI programlama, Standard Template Library, STL container, STL iterator, STL algoritmaları, ve seçilmiş Boost C++ kütüphaneleri yer almaktadır.
Öğrenme Çıktıları Bu dersi başarıyla tamamlayabilen öğrenciler;
  • Öğrenciler şablonların içinde sınıf şablonlarının, tip özellik sınıflarının ve kural şablonlarının da dahil olduğu ileri seviyelerde yapılar kullanarak program geliştirebileceklerdir.
  • Öğrenciler soysal programlamanın kavramlarını bileceklerdir.
  • Öğrenciler yazılım kütüphaneleri geliştirebileceklerdir.
  • Öğrenciler grafik arayüz programlama ortamlarını kullanmayı bileceklerdir
  • Öğrenciler Standard Template Library kütüphanelerini kullanmayı bileceklerdir
  • Öğrenciler Boost C kütüphanelerini kullanmayı bileceklerdir
Tanımı Bu derste öğrencilere şablonlar ve soysal programlamanın prensipleri hakkında temel bilgiler verilmekte ve sık kullanılan soysal kütüphaneler tanıtılmaktadır.

 



Ders Kategorisi

Temel Meslek Dersleri
Uzmanlık/Alan Dersleri
X
Destek Dersleri
İletişim ve Yönetim Becerileri Dersleri
Aktarılabilir Beceri Dersleri

 

HAFTALIK KONULAR VE İLGİLİ ÖN HAZIRLIK ÇALIŞMALARI

Hafta Konular Ön Hazırlık
1 Giriş ve motivasyon. C++ nesneye yönelik programlamanın kısa olarak hatırlatılması Inheritance, Polymorphism, Abstraction, Encapsulation, Data Hiding, Exception handling
2 Temel şablon bilgileri. Fonksiyon ve sınıf şablonları David Vandevoorde and Nicolai M. Josuttis. C++ Templates: The Complete Guide. Addison Wesley, 2003. (Course book) Chapter 2, Chapter 3
3 Tip dışı template parametreleri, ince detaylar Course book Chapter 4, Chapter 5
4 Sablonların günlük programlamada kullanımı Course book Chapter 6
5 Sablonların çokbiçimli kullanım yetenekleri Course book Chapter 14
6 Tip özellikleri ve kural sınıfları Course book Chapter 15
7 Şablonlar ve kalıt Course book Chapter 16
8 Qt 4.6 ile grafik arayüz programlama C++ GUI Programming with Qt 4 (2nd Edition) (Prentice Hall Open Source Software Development Series) Prentice Hall, 2008
9 Standard Template Library tanıtımı Josuttis, Nicolai M. The C++ standard library: a tutorial and reference. Addison Wesley, 1999 (STL Book) Chapter 2
10 Associative Containers: Map, Multimap, Set, and Multiset. STL Book Chapter 6
11 STL iterators STL Book Chapter 7
12 STL algorithms STL Book Chapter 8
13 Boost Smart Pointers Boost C++ libraries website
14 Other Selected Boost C++ Libraries Boost C++ libraries website
15 Proje sunumları
16 Dönemin gözden geçirilmesi  

 

Dersin Kitabı David Vandevoorde and Nicolai M. Josuttis. C++ Templates: The Complete Guide. Addison Wesley, 2003.
Diğer Kaynaklar C++ GUI Programming with Qt 4 (2nd Edition) (Prentice Hall Open Source Software Development Series) Prentice Hall, 2008 Josuttis, Nicolai M. The C++ standard library: a tutorial and reference. Addison Wesley, 1999Boost C++ libraries website

 

DEĞERLENDİRME ÖLÇÜTLERİ

Yarıyıl İçi Çalışmaları Sayı Katkı Payı %
Derse Katılım
1
10
Laboratuvar / Uygulama
Arazi Çalışması
Küçük Sınavlar / Stüdyo Kritiği
Ödev
Sunum / Jüri Önünde Sunum
Proje
1
30
Çalıştay
Ara Sınav / Sözlü Sınav
1
20
Final Sınavı / Sözlü Sınav
1
40
Toplam

Yarıyıl İçi Çalışmalarının Başarı Notuna Katkısı
60
Yarıyıl Sonu Çalışmalarının Başarı Notuna Katkısı
40
Toplam

AKTS / İŞ YÜKÜ TABLOSU

Aktiviteler Sayı Süresi (Saat) İş Yükü
Teorik Ders Saati
(Sınav haftası dahildir: 16 x toplam ders saati)
16
3
48
Laboratuvar / Uygulama Ders Saati
Sınav haftası dahil değildir. 16 x uygulama/lab ders saati
16
Sınıf Dışı Ders Çalışması
15
2
Arazi Çalışması
Küçük Sınavlar / Stüdyo Kritiği
Ödev
Sunum / Jüri Önünde Sunum
Proje
1
15
Çalıştay
Ara Sınavlar / Sözlü Sınavlar
1
22
Final / Sözlü Sınav
1
35
    Toplam
150

 

DERSİN ÖĞRENME ÇIKTILARININ PROGRAM YETERLİLİKLERİ İLE İLİŞKİSİ

#
Program Yeterlilikleri / Çıktıları
* Katkı Düzeyi
1
2
3
4
5
1 Benzetim, eniyileme, olasılık ve istatistik gibi Endüstri Mühendisliği kavram ve tekniklerini üretim ve hizmet sistemlerinde kullanarak yönetimsel karar verme işlemlerini iyileştirmek, kalite bilincini oluşturmak, elde edilen verileri yorumlayabilmek ve değerlendirebilmek X
2 Bütünleşik işleri veya iş sistemlerini ihtiyaçları doğrultusunda çeşitli alternatifler üreterek ve değerlendirerek sistem bakış açısı ile tasarlayabilmek X
3 Endüstri Mühendisliği ile ilgili uygulamada karşılaşılan konuları/sorunları tanımlayabilmek, analiz edebilmek, kanıtlara ve araştırmalara dayalı çözüm önerileri geliştirebilmek X
4 Nicel analiz ve eleştirel düşünce yöntemlerini kullanarak kaynak aktarımı, üretim planlaması ve çizelgelemesi, kalite kontrol ve güvence, finansal analiz ve risk analizi vb. Endüstri Mühendisliği ile ilgili konularda sorunları belirleyebilmek; bu sorunlar için alternatif çözümler üretebilmek ve alternatif çözümler içinden sistem gereksinimlerine cevap verecek en iyi çözümleri bulmak X
5 Uygulamada karşılaşılan ve öngörülemeyen karmaşık sorunları çözmek için bireysel ve grup üyesi olarak sorumluluk alabilmek, sorumluluğu altında çalışanların veya grup çalışanlarının mesleki gelişimine yönelik etkinlikleri planlayabilmek ve yönetebilmek X
6 Endüstri Mühendisliği alanında edindiği bilgi ve becerileri eleştirel bir yaklaşımla değerlendirebilmek, öğrenme gereksinimlerini belirleyebilmek ve öğrenmesini yönlendirebilmek X
7 Endüstri Mühendisliği ile ilgili konularda ilgili kişi ve kurumları bilgilendirebilmek; düşüncelerini ve sorunlara ilişkin çözüm önerilerini yazılı ve sözlü olarak aktarabilmek ve nicel ve nitel verilerle destekleyerek uzman olan ve olmayan kişilerle paylaşabilmek X
8 Bir yabancı dili kullanarak Endüstri Mühendisliği ilgili bilgileri izleyebilmek ve meslektaşları ile iletişim kurabilmek (“European Language Portfolio Global Scale”, Level B1) X
9 Endüstri Mühendisliği ile ilgili bilgisayar yazılımlarını kullanabilmek ve uygulamada karşılaşacağı bilişim ve iletişim teknolojilerini kullanabilecek bilgi ve beceriye sahip olmak (“European Computer Driving License”, Advanced Level) X
10 Sosyal hakların evrenselliğine değer veren, sosyal adalet bilinci kazanmış, kalite yönetimi ve süreçleri ile çevre koruma ve iş güvenliği konularında yeterli bilince sahip olmak X
11 Endüstri Mühendisliği ile ilgili verilerin toplanması, yorumlanması, duyurulması ve uygulanması aşamalarında toplumsal, bilimsel ve etik değerlere sahip olmak X

*1 Lowest, 2 Low, 3 Average, 4 High, 5 Highest

 


HABERLER