BILGISAYAR PROGRAMCILIĞI
Önlisans TYYÇ: 5. Düzey QF-EHEA: Kısa Düzey EQF-LLL: 5. Düzey

Ders Genel Tanıtım Bilgileri

Ders Kodu: BGP 121
Ders İsmi: Yazılım ve Matematik
Ders Yarıyılı: 2. Yarıyıl / Bahar
Ders Kredileri:
Teorik Pratik Kredi AKTS
2 2 3 4
Öğretim Dili: TR
Ders Koşulu: Yok
Dersin Türü: Zorunlu
Dersin Düzeyi:
Önlisans TYYÇ:5. Düzey QF-EHEA:Kısa Düzey EQF-LLL:5. Düzey
Dersi Veren(ler):

Dersin Amaç ve İçeriği

Dersin Amacı: Yazılım ve Matematik dersinin amacı, matematiksel kavramların yazılım geliştirme süreçlerinde nasıl uygulandığını öğrenerek, matematik temelli algoritmalar geliştirebilen ve bu yöntemleri yazılıma entegre edebilen bireyler yetiştirmektir.
Dersin Hedefi: Yazılım ve Matematik dersinin hedefi, öğrencilerin matematiksel modelleri ve algoritmaları kullanarak, yazılım geliştirme süreçlerinde analitik ve algoritmik düşünme becerisi kazanmalarını sağlamaktır.
Dersin Veriliş Şekli: Yüz yüze

Öğrenme Kazanımları

Bilgi (Kuramsal ve/veya olgusal bilgi olarak tanımlanmıştır.)
  1) Öğrenciler, matematiksel kavramların yazılım geliştirme süreçlerindeki rolünü ve algoritmik düşünmenin temel ilkelerini öğrenir.
Beceriler (Bilişsel ve/veya uygulama becerileri olarak tanımlanmıştır.)
  1) Öğrenciler, matematiksel modeller ve algoritmalar kullanarak yazılım çözümleri geliştirme ve bu çözümleri optimize etme becerisi kazanır.
Yetkinlikler (Bağımsız çalışabilme, sorumluluk alabilme, öğrenme, alana özgü, iletişim ve sosyal yetkinlikler olarak tanımlanmıştır.)
  1) Öğrenciler, yazılım geliştirme süreçlerinde karşılaşılan karmaşık problemlere matematiksel yöntemlerle yaklaşma ve bu yöntemleri etkin bir şekilde uygulama yetkinliği geliştirir.

Ders Akış Planı

Hafta Konu
Ön Hazırlık Pekiştirme
1) Yazılım ve Matematik İlişkisine Giriş: Temel Kavramlar
2) Algoritmaların Matematiksel Temelleri
3) Doğrusal Cebir ve Yazılım Geliştirmede Uygulamaları
4) Kombinatorik ve Karmaşıklık Analizi
5) Matematiksel Modelleme ve Simülasyon Teknikleri
6) Sayısal Analiz ve Hesaplamalı Yöntemler
7) Grafikler Teorisi ve Ağ Algoritmaları
8) Kriptoloji ve Sayı Teorisi
9) Olasılık ve İstatistiksel Yöntemlerin Yazılıma Entegrasyonu
10) Optimizasyon Algoritmaları ve Uygulamaları
11) Türev ve İntegral Hesaplamalarının Yazılımda Kullanımı
12) Yapay Zeka ve Makine Öğreniminde Matematiksel Modeller
13) Matematiksel Programlama Dilleri: MATLAB ve R Uygulamaları
14) Matematiksel Problemlerin Yazılım İle Çözümü: Proje Sunumları
Diğer Kaynaklar: Kaya, B. (2020). Algoritmalar ve veri yapıları: Matematiksel temellerle yazılım geliştirme. Seçkin Yayıncılık.
Ersoy, A. (2019). Bilgisayar bilimlerinde matematiksel düşünme ve algoritmalar. Nobel Yayınları.
Akçay, E. (2021). Matematiksel modelleme ve yazılım uygulamaları. Kodlab Yayıncılık.
Yıldız, E. (2018). Yazılım mühendisliği için matematiksel temeller. Pusula Yayıncılık.
Knuth, D. E. (1997). The art of computer programming, Volume 1: Fundamental algorithms (3rd ed.). Addison-Wesley.

Ders - Program Öğrenme Kazanım İlişkisi

Etkisi Yok 1 En Düşük 2 Orta 3 En Yüksek
       
Ders Öğrenme Kazanımları

1

1

1

Program Kazanımları
1) Bilgisayar bilimlerinin temel kavramlarını ve terminolojisini anlama.
2) C, C++, Java, Python gibi yaygın kullanılan programlama dillerinde kod yazabilme.
3) Algoritma ve veri yapıları konularında derinlemesine bilgi sahibi olma. 1 1 1
4) Yazılım projelerinin planlanması, yürütülmesi ve yönetimi konusunda bilgi sahibi olma.
5) Veritabanı tasarımı, yönetimi ve SQL sorgulama hakkında bilgi sahibi olma.
6) Bilgisayar ağları, internet teknolojileri ve iletişim protokolleri hakkında bilgi sahibi olma.
7) Çeşitli programlama dillerinde ve platformlarda etkili kod yazabilme.
8) Algoritmik düşünme yeteneği ile karmaşık problemleri çözebilme. 2 2 2
9) Matematiksel ve mantıksal düşünme yeteneklerini kullanarak yazılım çözümleri geliştirebilme. 3 3 3
10) Veritabanı oluşturma, yönetme ve sorgulama becerileri.
11) HTML, CSS, JavaScript ve ilgili frameworklerle web uygulamaları geliştirebilme.
12) Android ve iOS platformları için mobil uygulama geliştirme becerileri.
13) Yazılım geliştirme süreçlerinde ekip içinde etkin bir şekilde çalışabilme.
14) Yazılım projelerini planlama, yürütme ve yönetme becerileri.
15) Teknolojideki yenilikleri ve güncel gelişmeleri takip ederek sürekli öğrenme yetkinliği.
16) Teknik ve teknik olmayan paydaşlarla etkili iletişim kurabilme.
17) Yaratıcı düşünme ile yazılım projelerinde yenilikçi yaklaşımlar benimseme.
18) Kendi kendine öğrenme ve mesleki gelişim için gerekli motivasyona sahip olma.
19) Grafik tasarım alanında üretilmiş düşünce ve tasarımları, ekip çalışması içerisinde doğru uygulayabilecek ,bilgiye sahip olmak ve tasarım ve üretim alanındaki ekip ile uyumlu bir şekilde çalışabilecek düzeye getirmek.
20) Grafik tasarımın yaratım, uygulama ve üretim aşamalarını planlar. Bilgisayarda grafik programlarını kullanarak tasarımlarını görselleştirir.

Ders Öğretme, Öğrenme Yöntemleri

Soru-Cevap
Vaka Problemi Çözdürme/ Drama-Rol/ Vaka Yönetimi
Laboratuvar
Sayısal Problem Çözme
Alan çalışması
Grup Çalışması / Ödevi
Bireysel Ödev
WEB Tabanlı Öğrenme
Staj
Yerinde Uygulama
Proje Hazırlama
Rapor Yazma
Seminer
Süpervizyon
Sosyal Faaliyet
Mesleki Faaliyet
Mesleki Gezi
Uygulama (Modelleme, Tasarım, Maket, Simülasyon, Deney vs.)
Okuma
Tez Hazırlama
Arazi Çalışması
Öğrenci Kulüp ve Konseyi Faaliyetleri
Diğer
Logbook
Röportaj ve sözlü görüşme
Araştırma
Film izleme
Kaynakça oluşturma
Sözlü, yazılı ve görsel bilgi üretme
Fotoğraf çekimi
Eskiz çizimi
Harita üzerinde işaretleme
Harita okuma
Doku örneği alma
Malzeme arşivi oluşturma
Kendi fikrini ve çalışmalarını sunma ve sergileme

Değerlendirmeye Sistemi

Yarıyıl İçi Çalışmaları Aktivite Sayısı Katkı Payı
Devam % 0
Laboratuar % 0
Uygulama % 0
Uygulama Sınavı % 0
Küçük Sınavlar % 0
Ödev % 0
Sunum % 0
Projeler % 0
Derse Özgü Staj % 0
Alan Çalışması % 0
Makale Kritik % 0
Makale Yazma % 0
Modül Grup Çalışması % 0
Beyin Fırtınası % 0
Rol Oynama + Dramatize Etme % 0
Sınıf Dışı Ders Çalışma % 0
Ön Çalışma, Pekiştirme % 0
Uygulama Tekrarı vb. % 0
Ödevler (okuma, yazma, film izleme vs.) % 0
Proje Hazırlama + Sunma % 0
Rapor Hazırlama + Sunma % 0
Sunum / Seminer Hazırlama + Sunma % 0
Sözlü Sınav % 0
Ara Sınavlar 1 % 40
Final 1 % 60
Pratik Final % 0
Rapor Teslimi % 0
Bütünleme % 0
Bütünleme Pratik % 0
Kanaat Notu % 0
Kurul-Committee % 0
Yazma Ödev Dosyası % 0
Portfolyo % 0
Take-Home Sınav % 0
Seyir Defteri % 0
Katılım % 0
Tartışma % 0
Toplam % 100
YARIYIL İÇİ ÇALIŞMALARININ BAŞARI NOTU KATKISI % 40
YARIYIL SONU ÇALIŞMALARININ BAŞARI NOTUNA KATKISI % 60
Toplam % 100

İş Yükü ve AKTS Kredisi Hesaplaması

Aktiviteler Aktivite Sayısı İş Yükü
Ders Süresi 14 56
Laboratuvar
Uygulama
Uygulama Sınavı
Derse Özgü Staj
Alan Çalışması
Sınıf Dışı Ders Çalışması
Makale Kritik
Makale Yazma
Modül Grup Çalışması
Beyin Fırtınası
Rol Oynama + Dramatize Etme
Sınıf Dışı Ders Çalışma (Ön Çalışma, Pekiştirme, Uygulama Tekrarı Vb.) 14 28
Ödevler (okuma, yazma, film izleme vs.)
Proje Hazırlama + Sunma
Rapor Hazırlama + Sunma
Sunum / Seminer Hazırlama + Sunma
Sözlü Sınav
Ara Sınavlara Hazırlanma 7 14
ARA SINAV (Vize) 1 1
Genel Sınava Hazırlanma 14 21
GENEL SINAV (Final) 1 1
Katılım
Tartışma
Portfolyo
Take-Home Sınav
Seyir Defteri
Toplam İş Yükü 121
AKTS (30 saat = 1 AKTS ) 4