İçerik
Dersin Amacı
Bu dersin amacı, İktisat Bölümü öğrencilerine programlamanın temel kavramlarını öğreterek, dijital çağın gerekliliklerine uygun bilgi-işlemsel düşünme düşünme ve veri işleme becerileri kazandırmalarına yardımcı olmaktır. Öğrenciler, algoritma ve akış diyagramları üzerinden bilgi-işlemsel düşünme becerilerini geliştirirken, Python programlama dili ile yazılım geliştirme sürecini deneyimleme fırsatı bulacaklardır. Veri tipleri, listeler, demetler, kümeler ve sözlükler gibi temel veri yapılarının yanı sıra, karar yapıları, döngüler ve fonksiyonlar aracılığıyla problem çözme yetenekleri artırılacaktır. Ayrıca, NumPy, Pandas ve Matplotlib gibi kütüphaneler sayesinde öğrenciler, veri analizi görselleştirmesi ve yorumlaması yetilerini geliştireceklerdir.
Dersin İçeriği
Programlamaya Giriş ve Temel Kavramlar
* Bilgi-işlemsel düşünme
* Algoritma nedir ve nasıl tasarlanır?
* Akış diyagramları
* Yazılım geliştirme süreci
Programlama dilleri hakkında genel bilgi
* Python Programlama Diline Giriş
* Python nedir?
* Derleyici ve yorumlayıcı kavramları
* IDE kullanımı ve kurulumu
* Python arayüzü tanıtımı
Veri Tipleri ve Temel Yapılar
* Sayısal veriler: Integers, Floats
* Metin verileri: Strings
* Mantıksal veriler: Booleans
* Değişken tanımlama ve kullanımı
* Operatörler: matematiksel, karşılaştırma, mantıksal
Karar Yapıları, Döngüler, Hata Yakalama
* if, else, elif yapıları
* İç içe karar yapıları
* while ve for döngüleri
* Döngülerde break ve continue kullanımı
* Range ve enumerate fonksiyonları
* Hata Çeşitleri
* Hata Yakalama Blokları
Fonksiyonlar
* Parametreli ve parametresiz fonksiyonlar
* Return deyimi
* Lambda ifadeleri
* Özyinelemeli (recursive) fonksiyonlar
Veri Yapıları
* Listeler (list)
* Demetler (tuple)
* Kümeler (set)
* Sözlükler (dictionary)
Python Standart Kütüphaneleri
* Math modülü
* Random modülü
* Datetime ve Time modülleri
Dosya İşlemleri
* Dosya oluşturma, yazma, okuma
* Dosya güncelleme ve kontrol fonksiyonları
Veri Analizi ve Görselleştirme Kütüphaneleri
* NumPy: Sayısal hesaplamalar
* Pandas: Veri analizi ve veri çerçeveleri
* Matplotlib: Grafik ve veri görselleştirme
Dersin Öğrenme Çıktıları
Dersin sonunda öğrencilerin aşağıdaki öğrenme kazanımlarına erişmesi hedeflenmektedir:
* Temel algoritma ve akış diyagramlarını kullanarak problem çözüm sürecini modelleyebilir.
* Bilgi-işlemsel düşünme becerisi geliştirerek yazılım geliştirme süreçlerini anlayabilir.
* Python programlama dilinin temel sözdizimini ve yapılarını kullanarak basit programlar yazabilir.
* Değişkenler, veri tipleri ve temel operatörlerle işlem yapabilir.
* Karar yapıları ve döngüler aracılığıyla program akışını kontrol edebilir.
* Liste, demet, küme ve sözlük gibi veri yapılarını kullanarak veri saklama ve işleme işlemleri gerçekleştirebilir.
* Fonksiyonlar aracılığıyla modüler ve okunabilir kodlar geliştirebilir.
* Dosya işlemleri yaparak verileri dış kaynaklardan okuyabilir veya veri kaydı gerçekleştirebilir.
* Python’un standart kütüphaneleriyle (math, random, datetime vb.) çeşitli işlemler yapabilir.
* NumPy, Pandas ve Matplotlib kütüphanelerini kullanarak ekonomik veriler üzerinde temel düzeyde analiz ve görselleştirme yapabilir.
* Programlama bilgilerini ekonomi alanındaki veri temelli problemlerde uygulayabilir.
Öğretim Yöntemleri
Düz Anlatım: Temel kavramların, algoritmaların ve Python programlama yapısının öğretimi için kullanılacaktır.
Demonstrasyon: Derste örnek uygulamalar yapılarak konuların pratiğe dökülmesi sağlanacaktır.
Problem Çözme ve Uygulama Çalışmaları: Ekonomiye yönelik örnekler üzerinden algoritma geliştirme ve Python kodlama pratiği yapılmaktadır.
Soru-Cevap Yöntemi: Öğrencilerin aktif katılımını sağlamak ve konuları pekiştirmek amacıyla kullanılmaktadır.
Laboratuvar Uygulamaları: Python programlarının yazılıp çalıştırılacağı, veri analizi yapılacağı bilgisayar ortamında uygulamalı eğitim yapılır.
Ödev: Öğrenciler, küçük çaplı bir proje ya da veri analizi ödevi ile öğrendiklerini uygulamaktadır.
Geribildirim: Laboratuvar etkinliklerine uygulama sonrası değerlendirme ve geri bildirim verilmektedir.
Kaynaklar
Her haftanın ders kaynakları Moodle ders sayfasında ilgili hafta altına yüklenecektir.
Aşağıdaki kaynaklar ana ders kaynaklarına yardımcı olarak (opsiyonel) kullanılabilecektir:
Yıldız, B. Python Projeleri ve Popüler Kütüphaneler (3. Baskı)
Tungut, H. B. Algoritma ve Programlama Mantığı (23. Baskı)
Taşçı, V. Python Eğitim Kitabı (4. Baskı)
Kalb, I. Learn to Program with Python 3.
Sweigart, Al. The Big Book of Small Python Projects: 81 Easy Practice Programs
Matthes, Eric. Python Crash Course, 3rd Edition: A Hands-On, Project-Based Introduction to Programming.
Tuckfield, Bradford. Dive into Algorithms: A Pythonic Adventure for the Intrepid Beginner.
Konu Başlıkları
Değerlendirme Sistemi
Yeterlilik İlişkisi
AKTS - İş Yükü Tablosu