| Kodu |
Dersin Adı |
Yarıyıl |
Süresi(T+U) |
Kredisi |
AKTS Kredisi |
| BST303 |
PYTON PROGRAMLAMA |
5 |
6 |
3 |
5 |
DERS BİLGİLERİ |
| Dersin Öğretim Dili : |
Türkçe |
| Dersin Düzeyi |
LİSANS, TYY: + 6.Düzey, EQF-LLL: 6.Düzey, QF-EHEA: 1.Düzey |
| Dersin Türü |
Zorunlu |
| Dersin Veriliş Şekli |
- |
| Dersin Koordinatörü |
Dr.Öğr.Üyesi BANU KAYINOVA |
| Dersi Veren Öğretim Üyesi/Öğretim Görevlisi |
|
| Ders Ön Koşulu |
Yok |
AMAÇ VE İÇERİK |
| Amaç: |
Bu dersin amacı, öğrencilere Python programlama dilinin temellerini kazandırmak ve bu dilin farklı uygulama alanlarındaki (veri analizi, yapay zeka, bilimsel hesaplama, web uygulamaları gibi) kullanımına yönelik bilgi ve beceri kazandırmaktır. Ders kapsamında fonksiyonel programlama ve nesneye yönelik programlama kavramları da ele alınarak, öğrencilere modern yazılım geliştirme süreçlerine uygun düşünme becerileri kazandırılması hedeflenmektedir. Uygulamalı içeriklerle desteklenen ders, gerçek dünya problemlerine çözüm geliştirme yetisi sağlamayı amaçlamaktadır. |
| İçerik: |
Python, hem fonksiyonel hem de nesneye yönelik programlama yaklaşımlarını destekleyen, açık kaynak kodlu ve çok amaçlı bir programlama dilidir. Bu derste temel sözdizimi, kontrol yapıları, veri yapıları, kütüphaneler ve nesne tabanlı programlama konuları uygulamalı olarak ele alınacaktır. Öğrenciler, Python’un bilimsel ve sektörel uygulamalardaki kullanımını örnek projelerle deneyimleyecektir. |
DERSİN ÖĞRENME ÇIKTILARI (Öğrenciler, bu dersi başarı ile tamamladıklarında aşağıda belirtilen bilgi, beceri ve/veya yetkinlikleri gösterirler.) |
| Temel Sözdizimi ve Algoritmik Mantık: Python’un temel veri tiplerini, kontrol yapılarını (if-else) ve döngüleri (for, while) kullanarak mantıksal problemlerin çözümüne yönelik algoritmalar geliştirir. Fonksiyonel ve Nesne Yönelimli Programlama (OOP): Karmaşık problemleri fonksiyonlara bölerek modüler kod yazma becerisi edinir; sınıf (class), nesne (object), kalıtım ve kapsülleme gibi OOP prensiplerini gerçek senaryolarda uygular. Veri Yapılarını Yönetme: Liste, sözlük (dictionary), demet (tuple) ve küme (set) gibi yerleşik veri yapılarını kullanarak veriyi verimli bir şekilde saklama, işleme ve yönetme yetisi kazanır. Kütüphane ve Modül Entegrasyonu: Standart kütüphanelerin yanı sıra, bilimsel ve sektörel analizlerde yaygın olarak kullanılan harici kütüphaneleri (örneğin veri analizi için NumPy/Pandas veya görselleştirme için Matplotlib) projelerine entegre eder. Uygulamalı Proje Geliştirme: Öğrenilen teorik bilgileri; veri analizi, otomasyon veya temel web uygulamaları gibi örnek projeler üzerinde deneyimleyerek sektörel ihtiyaçlara yönelik çözümler üretir. |
HAFTALIK DERS KONULARI VE ÖNGÖRÜLEN HAZIRLIK ÇALIŞMALARI |
| Hafta |
Ön Hazırlık |
Konular |
Yöntem |
| 1 |
- |
Python’a giriş, temel veri türleri ve değişkenler, operatörler |
- |
| 2 |
- |
Koşullu ifadeler (if, elif, else) ve karşılaştırma işlemleri |
- |
| 3 |
- |
Döngü yapıları (for, while) ve uygulamaları |
- |
| 4 |
- |
Liste veri yapısı (tek boyutlu listeler) ve temel işlemler |
- |
| 5 |
- |
Python’da hazır kütüphanelerin kullanımı: Math ve Random |
- |
| 6 |
- |
Çok boyutlu listeler ve iç içe veri yapıları |
- |
| 7 |
- |
Numpy kütüphanesine giriş: Temel işlemler |
- |
| 8 |
- |
Numpy ile matris işlemleri ve veri analizi uygulamaları |
- |
| 9 |
- |
Genel tekrar ve uygulamalı sınav hazırlığı |
- |
| 10 |
- |
ARA SINAV |
- |
| 11 |
- |
Fonksiyon tanımları, parametreler, dönüş değerleri |
- |
| 12 |
- |
Fonksiyonel programlama yaklaşımı ve örnek uygulamalar |
- |
| 13 |
- |
Sınıflar ve nesneler (Oop) |
- |
| 14 |
- |
OOP devam: Metotlar, kalıtım ve kapsülleme |
- |
| 15 |
- |
Önceki konuların kullanıldığı kapsamlı mini Python projesi değerlendirmesi |
- |
| 16 |
- |
FİNAL |
- |
| 17 |
- |
FİNAL |
- |
KAYNAKLAR |
| McKinney, W. (2022). Veri analizi için Python (2. baskı). (B. E. B. Yılmaz, Çev.). |
ÖLÇME VE DEĞERLENDİRME |
| Yarıyıl İçi Yapılan Çalışmaların Ölçme ve Değerlendirmesi |
Etkinlik Sayısı |
Katkı Yüzdesi |
Açıklama |
Sınav Yapılma Şekli |
| (0) Etkisiz |
(1) En Düşük |
(2) Düşük |
(3) Orta |
(4) İyi |
(5) Çok İyi |
| 0 |
1 |
2 |
3 |
4 |
5 |
DERSİN PROGRAM ÖĞRENME ÇIKTILARINA KATKISI
| BİLGİ |
| Kuramsal |
|
Program Yeterlilikleri/Çıktıları |
Katkı Düzeyi |
| 0 |
1 |
2 |
3 |
4 |
5 |
| 1 |
Bilişim sistemleri, yazılım geliştirme, programlama ve web teknolojilerinin temel kavramlarını, kuramlarını ve yaklaşımlarını yorumlar.
|
|
|
|
|
|
5 |
| 2 |
Veri bilimi, yapay zekâ, bulut bilişim ve siber güvenlik dâhil olmak üzere bilişim sistemleri yönetimi ve proje süreçlerinin kuramsal temellerini analiz eder.
|
|
|
|
|
4 |
|
| BİLGİ |
| Olgusal |
|
Program Yeterlilikleri/Çıktıları |
Katkı Düzeyi |
| 0 |
1 |
2 |
3 |
4 |
5 |
| 1 |
Yazılım geliştirme, veri bilimi, ağ teknolojileri, web uygulamaları ve donanım–yazılım etkileşimi gibi bilişim alanlarının temel kavramlarını ve olgularını açıklar.
|
|
|
|
|
|
5 |
| 2 |
Kurumsal bilgi sistemleri, bulut bilişim, yapay zekâ, siber güvenlik ve proje yönetimi alanlarındaki temel kuram ve yaklaşımları tanımlar.
|
|
|
|
|
4 |
|
| BECERİLER |
| Bilişsel |
|
Program Yeterlilikleri/Çıktıları |
Katkı Düzeyi |
| 0 |
1 |
2 |
3 |
4 |
5 |
| 1 |
Bilişim teknolojileri, yazılım geliştirme ve veri yapıları alanlarında edindiği bilgileri kullanarak karmaşık problemleri analiz eder ve uygun çözüm yöntemlerini belirler.
|
|
|
|
|
|
5 |
| 2 |
Bulut bilişim, yapay zekâ, siber güvenlik ve proje yönetimi konularındaki verileri eleştirel bir bakış açısıyla değerlendirerek bilişim sistemlerinin stratejik planlamasına yönelik çıkarımlar yapar.
|
|
|
|
|
|
5 |
| BECERİLER |
| Uygulamalı |
|
Program Yeterlilikleri/Çıktıları |
Katkı Düzeyi |
| 0 |
1 |
2 |
3 |
4 |
5 |
| 1 |
Programlama dilleri, veri tabanı yönetimi, algoritmalar ve web teknolojilerini kullanarak işlevsel yazılım ve web uygulamaları geliştirir.
|
|
|
|
|
|
5 |
| 2 |
Bulut bilişim, kurumsal bilgi sistemleri ve proje yönetimi araçlarını kullanarak bilişim projelerini planlar, uygular ve sonuçlarını değerlendirir.
|
|
|
|
|
|
5 |
| YETKİNLİKLER |
| Bağımsız Çalışabilme ve Sorumluluk Alabilme Yetkinliği |
|
Program Yeterlilikleri/Çıktıları |
Katkı Düzeyi |
| 0 |
1 |
2 |
3 |
4 |
5 |
| 1 |
Bilişim projelerini bağımsız olarak planlar, yürütür ve tamamlar; süreçte ortaya çıkan teknik ve yönetimsel sorumlulukları üstlenir.
|
|
|
|
|
|
5 |
| 2 |
Yazılım geliştirme ve bilgi sistemleri projelerinde ekip içinde etkin rol alır, gerektiğinde liderlik yaparak proje hedeflerine ulaşılmasını sağlar.
|
|
|
|
|
|
5 |
| YETKİNLİKLER |
| Öğrenme Yetkinliği |
|
Program Yeterlilikleri/Çıktıları |
Katkı Düzeyi |
| 0 |
1 |
2 |
3 |
4 |
5 |
| 1 |
Bilişim teknolojilerindeki yenilikleri ve yazılım geliştirme trendlerini sürekli izler, mesleki bilgi ve becerilerini güncel tutar.
|
|
|
|
|
|
5 |
| 2 |
Kendi öğrenme süreçlerini değerlendirir, eksikliklerini belirler ve kişisel gelişimi için bağımsız olarak yeni öğrenme fırsatları oluşturur.
|
|
|
|
|
|
5 |
| YETKİNLİKLER |
| İletişim ve Sosyal Yetkinlik |
|
Program Yeterlilikleri/Çıktıları |
Katkı Düzeyi |
| 0 |
1 |
2 |
3 |
4 |
5 |
| 1 |
Teknik ve teknik olmayan paydaşlara bilişim projelerini açık, anlaşılır ve ikna edici bir şekilde sunar; yazılı ve sözlü iletişim kanallarını etkin kullanır.
|
|
|
|
|
4 |
|
| 2 |
Farklı disiplinlerden ve kültürel arka planlardan gelen ekiplerle iş birliği yaparak bilişim projelerinde etkili katkı sağlar.
|
|
|
|
|
|
5 |
| YETKİNLİKLER |
| Alana Özgü Yetkinlik |
|
Program Yeterlilikleri/Çıktıları |
Katkı Düzeyi |
| 0 |
1 |
2 |
3 |
4 |
5 |
| 1 |
Bilişim sistemleri, yazılım geliştirme ve veri yönetimi süreçlerinde mesleki etik ilkelere ve uluslararası standartlara uygun davranır.
|
|
|
|
|
|
5 |
| 2 |
Bilişim sistemleri ve teknolojileri alanında güncel araç, yöntem ve yaklaşımları kullanarak çözüm üretir ve yenilikçi projeler geliştirir.
|
|
|
|
|
|
5 |
DERSİN İŞ YÜKÜ VE AKTS KREDİSİ |
| Öğrenme-Öğretme Etkinlikleri İş Yükü |
| Öğrenme-Öğretme Etkinlikleri |
Etkinlik(hafta sayısı) |
Süresi(saat sayısı) |
Toplam İş Yükü |
| Ders |
14 |
6 |
84 |
| Derse Ön Hazırlık ve Ders Sonrası Pekiştirme |
14 |
1 |
14 |
| Arazi Çalışması |
0 |
0 |
0 |
| Grup Çalışması / Ödevi |
0 |
0 |
0 |
| Laboratuvar |
0 |
0 |
0 |
| Okuma |
14 |
1 |
14 |
| Ödev |
0 |
0 |
0 |
| Proje Hazırlama |
0 |
0 |
0 |
| Seminer |
0 |
0 |
0 |
| Staj |
0 |
0 |
0 |
| Teknik Gezi |
0 |
0 |
0 |
| Web Tab. Öğrenme |
0 |
0 |
0 |
| Uygulama |
0 |
0 |
0 |
| Yerinde Uygulama |
0 |
0 |
0 |
| Mesleki Faaliyet |
0 |
0 |
0 |
| Sosyal Faaliyet |
0 |
0 |
0 |
| Tez Hazırlama |
0 |
0 |
0 |
| Alan Çalışması |
0 |
0 |
0 |
| Rapor Yazma |
0 |
0 |
0 |
| Final Sınavı |
1 |
1 |
1 |
| Final Sınavı Hazırlığı |
5 |
2 |
10 |
| Ara Sınav |
1 |
1 |
1 |
| Ara Sınav Hazırlığı |
5 |
1 |
5 |
| Kısa Sınav |
0 |
0 |
0 |
| Kısa Sınav Hazırlığı |
0 |
0 |
0 |
| TOPLAM |
54 |
0 |
129 |
|
Genel Toplam |
129 |
|
|
Toplam İş Yükü / 25.5 |
5,1 |
|
|
Dersin AKTS(ECTS) Kredisi |
5,0 |
|