Geri
AKADEMİK
Geri Dön

Ders Tanımı

Ders Kodu Yarıyıl T+U Saat Kredi AKTS
MÜHENDİSLER İÇİN PROGRAMLAMA 3+2 4 6,0
Ders Programi Henüz Hazırlanmamıştır.
Ön Koşul Dersleri
Önerilen Seçmeli Dersler Nesne Tabanlı Programlama
Dersin Dili İngilizce
Dersin Seviyesi Lisans
Dersin Türü Zorunlu
Dersin Koordinatörü Doç.Dr. Mehmet Kemal ÖZDEMİR
Dersi Verenler Prof.Dr. Reda ALHAJJ
Dersin Yardımcıları
Dersin Amacı Bu derste öncelikle C programlama dilinin temelleri verilecek ve daha sonra ise C++ programlama dilinin öne çıkan konuları işlenecektir. Dersin temel amaçları şunlardır: Algoritma konusunun anlaşılması ve verilen bir problem için programlamanın ilk adımlarından test aşamasına kadar olan süreçleri aktarmak, modüler programlamanın önemini kavratmak ve fonksiyonların önemini ortaya koymak, pointer ve dinamik bellek atanmasının anlaşılması ve bunlarla dizinlerin ve metin dizilerinin programlamadaki öneminin ortaya konması, nesne tabanlı yaklaşımın programlamadaki öneminin ortaya konması. C++ tarafındaki temel amaçlar ise verinin soyutlandırılması ve sınıflar, işlemlerin tekrar tanımlanması, baz sınıf üzerine kurgulama, sanal fonksiyonlar ve polimorfizm, fonksiyon ve sınıf şablonları.
Dersin İçeriği Bu ders; Problemi tanımlayabilme ve tanımlanan problem için algoritma geliştirebilme,Modüler programlama ve fonksiyonlar,Dizin, metin dizini, ve veri araması gerektiren algoritmalar. ,İşaretçiler ve dinamik bellek ataması. ,Metin dizinleri ve ilgili fonksiyonları. ,C structs veri yapısı ve fonksiyon işaretçileri,Programlama değişkenlerinin tanımlandığı çerçeve ve işaretçilerin fonksiyon parametreleri için kullanımı. ,Ara sınav,Nesne Tabanlı Tasarım,Programlamada sınıflar konsepti,Sınıflar ve verilerin soyutlaştırılması,İşlemlerin tekrar tanımlanması ve sınıfların kalıtımı,Sanal fonksiyonlar ve çok biçimlilik,Fonksiyon ve sınıf şablonları, ikili ve metinsel dosyalar, ve ön-işlemci komutları; konularını içermektedir.
Dersin Öğrenme Kazanımları Öğretim Yöntemleri Ölçme Yöntemleri
1. C programlama için temel programlama dizim kurallarının öğrenilmesi. 1, 16 A, C, D, E
2. C Programlamada işaretçilerin anlaşılması, dinamik bellek atanması, dizinler ve metin dizinlerinin anlaşılması. 1, 16 A, C, D, E
3. Nesne tabanlı programlamaya olan ihtiyacın anlaşılması ve nesne tabanlı tasarım ile programlamanın nasıl yapılacağı. 1, 16 A, C, D, E
4. Verinin soyutlaştırılması ve C++ programlama dilinde sınıflar konsepti. 1, 16 A, C, D, E
5. Programlamada değişkenlerin tanımlandığı çerçeve ve işaretçilerin bu husustaki kullanımı. 1, 16 A, C, D, E
6. C++ programlama için işlemlerin tekrar tanımlanması, sınıflarda kalıtım, sanal fonksiyonlar ve çok biçimlilik konularının anlaşılması. 1, 16 A, C, D, E
Öğretim Yöntemleri: 1: Anlatım, 16: Proje Temelli Öğrenme
Ölçme Yöntemleri: A: Yazılı sınav, C: Ödev, D: Proje / Tasarım, E: Kısa Sınav
Haftalık ders konuları ve öğrenim hedefleri için tıklayınız.

Ders Akışı

Sıra Konular Ön Hazırlık
1 Problemi tanımlayabilme ve tanımlanan problem için algoritma geliştirebilme Ders notları
2 Modüler programlama ve fonksiyonlar Ders notları ve Kaynak 1'in 3. bölümü
3 Dizin, metin dizini, ve veri araması gerektiren algoritmalar. Ders notları
4 İşaretçiler ve dinamik bellek ataması. Ders notları ve 1 nolu kaynağın 6. ve 7. bölümü
5 Metin dizinleri ve ilgili fonksiyonları. Kaynak 1, Bölüm 8
6 C structs veri yapısı ve fonksiyon işaretçileri Ders notları ve Kaynak 1 Bölüm 7.
7 Programlama değişkenlerinin tanımlandığı çerçeve ve işaretçilerin fonksiyon parametreleri için kullanımı. Ders notları. Kaynak 1 Bölüm 7.
8 Ara sınav 8. haftaya kadar olan tüm konular.
9 Nesne Tabanlı Tasarım Ders notları ve Kaynak 1 Bölüm 15.
10 Programlamada sınıflar konsepti Ana kaynak Bölüm 9
11 Sınıflar ve verilerin soyutlaştırılması Temel kaynak, Bölüm 9
12 İşlemlerin tekrar tanımlanması ve sınıfların kalıtımı Ana kaynak Bölümler 10 ve 11
13 Sanal fonksiyonlar ve çok biçimlilik Ana kaynak Bölümler 11 ve 12
14 Fonksiyon ve sınıf şablonları, ikili ve metinsel dosyalar, ve ön-işlemci komutları Ana kaynak Bölüm 14, Kaynak 1 Bölüm 13
Kaynaklar
C++ How to Program (10th Edition) 10th Edition by Paul J. Deitel (Author), Harvey Deitel (Author)
Supplementary Text 1 : C How to Program by Deitel and Deitel (7th Edition), http://gph.sc.mahidol.ac.th/puwis/SCPY204/files/programming_in_C.pdf, Supplementary Text 2 : C++ How to Program by Deitel and Deitel (9th Edition) https://programmer-books.com/wp-content/uploads/2018/05/C-How-to-Program-9th-Edition-By-Paul-Deitel.pdf

Dersin Program Yeterliliklerine Katkısı

Dersin Program Yeterliliklerine Katkısı
No Program Yeterliliği Katkı Düzeyi
1 2 3 4 5
0
Matematik, fen bilimleri ve ilgili mühendislik disiplinine özgü konularda yeterli bilgi birikimi; bu alanlardaki kuramsal ve uygulamalı bilgileri, karmaşık mühendislik problemlerinde kullanabilme becerisi
0
Karmaşık mühendislik problemlerini saptama, tanımlama, formüle etme ve çözme becerisi; bu amaçla uygun analiz ve modelleme yöntemlerini seçme ve uygulama becerisi
0
Karmaşık bir sistemi, süreci, cihazı veya ürünü gerçekçi kısıtlar ve koşullar altında, belirli gereksinimleri karşılayacak şekilde tasarlama becerisi; bu amaçla modern tasarım yöntemlerini uygulama becerisi
0
Mühendislik uygulamalarında karşılaşılan karmaşık problemlerin analizi ve çözümü için gerekli olan modern teknik ve araçları geliştirme, seçme ve kullanma becerisi; bilişim teknolojilerini etkin bir şekilde kullanma becerisi
0
Karmaşık mühendislik problemlerinin veya disipline özgü araştırma konularının incelenmesi için deney tasarlama, deney yapma, veri toplama, sonuçları analiz etme ve yorumlama becerisi
0
Disiplin içi ve çok disiplinli takımlarda etkin biçimde çalışabilme becerisi; bireysel çalışma becerisi
0
Sözlü ve yazılı etkin iletişim kurma becerisi; en az bir yabancı dil bilgisi; etkin rapor yazma ve yazılı raporları anlama, tasarım ve üretim raporları hazırlayabilme, etkin sunum yapabilme, açık ve anlaşılır talimat verme ve alma becerisi
0
Yaşam boyu öğrenmenin gerekliliği bilinci; bilgiye erişebilme, bilim ve teknolojideki gelişmeleri izleme ve kendini sürekli yenileme becerisi
0
Etik ilkelerine uygun davranma, mesleki ve etik sorumluluk bilinci; mühendislik uygulamalarında kullanılan standartlar hakkında bilgi
0
Proje yönetimi, risk yönetimi ve değişiklik yönetimi gibi, iş hayatındaki uygulamalar hakkında bilgi; girişimcilik, yenilikçilik hakkında farkındalık; sürdürülebilir kalkınma hakkında bilgi
0
Mühendislik uygulamalarının evrensel ve toplumsal boyutlarda sağlık, çevre ve güvenlik üzerindeki etkileri ve çağın mühendislik alanına yansıyan sorunları hakkında bilgi; mühendislik çözümlerinin hukuksal sonuçları konusunda farkındalık
0
İnsan vücudunu anlama ve onarmada mühendisliğin ilkelerini uygulama ve karar verme yetisi

Değerlendirme Sistemi

Değerlendirme Sistemi Mutlak Değerlendirme
Ara Sınavın Başarıya Oranı   30
Genel Sınavın Başarıya Oranı   70
Toplam   100

AKTS - işyükü

AKTS / İşyükü Tablosu
Etkinlik Sayı Süresi
(Saat)
Toplam
İş Yükü
(Saat)
Ders Saati 14 3 42
Rehberli Problem Çözme 0 0 0
Problem Çözümü / Ödev / Proje / Rapor Tanzimi 4 16 64
Oku Dışı Diğer Faaliyetler 0 0 0
Proje Sunumu / Seminer 0 0 0
Kısa Sınav (QUİZ) ve Hazırlığı 10 2 20
Ara Sınav ve Hazırlığı 1 18 18
Genel Sınav ve Hazırlığı 1 24 24
Performans Görevi, Bakım Planı 0 0 0
Toplam İş Yükü (Saat) 168
Dersin AKTS Kredisi = Toplam İş Yükü (Saat)/30*=(48/30) 6,0
Dersin AKTS Kredisi: *30 saatlik çalışma 1 AKTS kredisi sayılmaktadır.

Sayısal Veriler

Öğrenci Başarı Durumu