BİLGİSAYAR PROGRAMLAMA II |
BLM122 |
2 |
3 |
0 |
4,0 |
Önkoşul(lar)-var ise |
|
Dersin Dili |
Türkçe |
Dersin Türü |
Lisans |
Dersin sorumlusu(ları) |
Dr. Öğr. Üyesi ULAŞ VURAL |
Dersin Amacı |
Bu dersin amacı; öğrencinin temel yapısal programlama bilgi ve becerilerinin geliştirilmesi, nesneye yönelik programlamanın detaylarına girilmeden nesne ve sınıf kavramlarının öğretilmesi ve bu yapıların öğrenci tarafından yazılım geliştirme süreçlerinde kullanılabilmesidir. |
Dersin Verilme Şekli |
Örgün |
Sıra No |
Dersin Öğrenme Çıktıları |
Öğretim Yöntemleri |
Değerlendirme Yöntemleri |
Program Yeterliliklerini Karşılama Düzeyi(1)(2)(3)(4)(5) |
1 |
Express the basic concepts of structural programming. |
|
|
|
1 |
Yapısal programlamanın temel kavramlarını ifade eder. |
Anlatım, Soru-cevap |
Sınav, Sözlü Değerlendirme |
1 |
2 |
Veri koleksiyonlarını tanır, kullanım durumlarını ayırt eder ve uygun şekilde kullanır. |
Anlatım, Soru-cevap, Gösterip Yaptırma |
Sınav, Sözlü Değerlendirme, Performans Ödevi |
1, 3, 8 |
2 |
Recognize data collections, distinguish their usage scenarios, and use them appropriately. |
|
|
|
3 |
Explain the concepts of objects and classes, design and use simple classes. |
|
|
|
3 |
Nesne ve sınıf kavramlarını açıklar, basit sınıflar tasarlar ve kullanır. |
Anlatım, Soru-cevap, Gösterip Yaptırma |
Sınav, Sözlü Değerlendirme, Performans Ödevi |
1, 2, 8 |
4 |
Temel arama ve sıralama algoritmalarını tanımlar ve yeniden yazar. |
Anlatım, Soru-cevap, Gösterip Yaptırma |
Sınav, Sözlü Değerlendirme, Performans Ödevi |
1, 2, 8 |
4 |
Define and rewrite basic search and sorting algorithms. |
|
|
|
5 |
Explore and utilize third-party libraries for solving academic or real-world problems. |
|
|
|
5 |
Akademik veya günlük problemlerin çözümünde 3. parti kütüphaneleri keşfeder ve uygun şekilde kullanır. |
Anlatım, Soru-cevap, Gösterip Yaptırma |
Sınav, Sözlü Değerlendirme, Performans Ödevi |
1, 2, 3, 5, 8 |
6 |
Özyinelemeli algoritmaları oluşturur ve programlar. |
Anlatım, Soru-cevap, Gösterip Yaptırma |
Sınav, Sözlü Değerlendirme, Performans Ödevi |
1, 8 |
6 |
Create and implement recursive algorithms. |
|
|
|
7 |
|
|
|
|
7 |
|
|
|
|
8 |
|
|
|
|
8 |
|
|
|
|
9 |
|
|
|
|
9 |
|
|
|
|
10 |
|
|
|
|
10 |
|
|
|
|
11 |
|
|
|
|
11 |
|
|
|
|
12 |
|
|
|
|
12 |
|
|
|
|
13 |
|
|
|
|
13 |
|
|
|
|
14 |
|
|
|
|
14 |
|
|
|
|
15 |
|
|
|
|
15 |
|
|
|
|
|
Dersin İçeriği |
Dersin içeriği aşağıdaki konuları kapsayacaktır:
Döngü ve Kontrol Yapılarının Tekrarı
Olağandışı Durumların Kontrolü
Veri Koleksiyonları - Listeler ve Diziler
Veri Koleksiyonları - Demetler
Veri Koleksiyonları - Kümeler
Veri Koleksiyonları - Sözlükler
Numpy Kütüphanesi ve Kullanımı
Nesne ve Sınıflara Giriş
Nesneye Yönelik Tasarım ve Kavramlar
Arama Algoritmaları
Sıralama Algoritmaları
Özyinelemeli Algoritmalar
Pandas ve PyPlot Kütüphanelerinin ve Kullanımı |
Kaynaklar |
1. Başer , M., (2012), Python, 9. Baskı, Dikeyeksen Yayıncılık.
2. Downey, A., (2016), Think Python, 2nd Edition, O’Reilly Media.
3. Zelle, J., (2016), Python Programming: An Introduction to Computer Science, 3rd Edition, Franklin, Beedle &
Associates. |
Haftalara Göre İşlenecek Konular |
Haftalar |
Konular |
Dokümanlar |
1 . Hafta |
Review of Loops and Control Structures |
|
1 . Hafta |
Döngü ve Kontrol Yapılarının Tekrarı |
|
2 . Hafta |
Olağandışı Durumların Kontrolü |
|
2 . Hafta |
Exception Handling |
|
3 . Hafta |
Data Collections - Lists and Arrays |
|
3 . Hafta |
Veri Koleksiyonları - Listeler ve Diziler |
|
4 . Hafta |
Veri Koleksiyonları - Demetler |
|
4 . Hafta |
Data Collections - Tuples |
|
5 . Hafta |
Data Collections - Sets |
|
5 . Hafta |
Veri Koleksiyonları - Kümeler |
|
6 . Hafta |
Veri Koleksiyonları - Sözlükler |
|
6 . Hafta |
Data Collections - Dictionaries |
|
7 . Hafta |
Numpy Library and Usage |
|
7 . Hafta |
Numpy Kütüphanesi ve Kullanımı |
|
8 . Hafta |
Ara Sınav |
|
8 . Hafta |
Midterm Exam |
|
9 . Hafta |
Introduction to Objects and Classes |
|
9 . Hafta |
Nesne ve Sınıflara Giriş |
|
10 . Hafta |
Nesneye Yönelik Tasarım ve Temel Kavramlar |
|
10 . Hafta |
Object-Oriented Design and Basic Concepts |
|
11 . Hafta |
Search Algorithms |
|
11 . Hafta |
Arama Algoritmaları |
|
12 . Hafta |
Sıralama Algoritmaları |
|
12 . Hafta |
Sorting Algorithms |
|
13 . Hafta |
Recursive Algorithms |
|
13 . Hafta |
Özyinelemeli Algoritmalar |
|
14 . Hafta |
Pandas ve PyPlot Kütüphanelerinin ve Kullanımı |
|
14 . Hafta |
Pandas and PyPlot Libraries and Usage |
|
15 . Hafta |
General Review |
|
15 . Hafta |
Genel Tekrar |
|
|
Değerlendirme Sistemi |
Yarıyıl içi çalışmaları |
Sayısı |
Katkı Payı (%) |
Ara Sınav |
1 |
25 |
Sözlü Değerlendirme |
0 |
0 |
Ödev |
0 |
0 |
Dönem Sonu Sınavı |
0 |
0 |
|
0 |
0 |
|
0 |
0 |
|
0 |
0 |
|
1 |
40 |
|
2 |
25 |
|
0 |
0 |
|
0 |
0 |
|
10 |
10 |
|
0 |
0 |
|
0 |
0 |
|
0 |
0 |
|
0 |
0 |
|
0 |
0 |
|
0 |
0 |
|
0 |
0 |
|
0 |
0 |
|
0 |
0 |
|
0 |
0 |
Toplam |
100 |
Yarıyıl İçi Çalışmalarının Başarı Notuna Katkısı |
3 |
25 |
Yarıyıl Sonu Çalışmalarının Başarı Notuna Katkısı |
1 |
0 |
Toplam |
100 |
|
AKTS (Öğrenci İş Yükü) Tablosu |
Etkinlikler |
Sayısı |
Süresi |
Toplam İş Yükü |
Ders Süresi |
1 |
2 |
2 |
Ara Sınava Hazırlanma |
0 |
0 |
0 |
Ödevler |
0 |
0 |
0 |
Dönem Sonu Sınavına Hazırlanma |
0 |
0 |
0 |
Ara Sınav |
0 |
0 |
0 |
Dönem Sonu Sınavı |
0 |
0 |
0 |
Sözlü Sınava Hazırlanma |
0 |
0 |
0 |
|
0 |
0 |
0 |
|
0 |
0 |
0 |
|
0 |
0 |
0 |
|
1 |
2 |
2 |
|
10 |
1 |
10 |
|
0 |
0 |
0 |
|
0 |
0 |
0 |
|
2 |
5 |
10 |
|
0 |
0 |
0 |
|
0 |
0 |
0 |
|
0 |
0 |
0 |
|
0 |
0 |
0 |
|
14 |
3 |
42 |
|
7 |
1 |
7 |
|
7 |
1 |
7 |
|
14 |
2 |
28 |
|
0 |
0 |
0 |
Toplam İş Yükü |
108 |
|
Dersin Öğrenme Çıktılarının Program Yeterlilikleri İle İlişkilendirilmesi |
Sıra No |
Program Yeterlilikleri |
Katkı Düzeyi* |
1 |
2 |
3 |
4 |
5 |
1 |
A computer engineer possesses fundamental applied and conceptual knowledge in the field of computer engineering. |
|
|
|
|
X |
2 |
They utilize mathematics, natural sciences, and theoretical and applied knowledge in computer engineering to solve engineering problems. |
|
|
|
|
X |
3 |
They identify current engineering problems in various application domains and provide feasible recommendations for their solution using computer systems. |
|
X |
|
|
|
4 |
They perform analyses of software or hardware-based systems, components, and processes required for problem-solving and create optimal designs that meet specified requirements and constraints. |
X |
|
|
|
|
5 |
They select and implement modern methods and tools necessary for engineering applications. |
X |
|
|
|
|
6 |
Problemlerin çözümü için gerekli olan veriyi toplar ve işler, deneyler tasarlar, deneyleri gerçekleştirir ve sonuçlarını yorumlar. |
X |
|
|
|
|
7 |
Mühendislik projelerinin yönetim süreçlerini bilir, proje için en uygun yönetim araçlarını ve proje yaşam döngüsünü seçer ve uygular. |
X |
|
|
|
|
8 |
They code, test, operate, and maintain computer-based systems. |
|
|
|
|
X |
9 |
They work effectively in interdisciplinary research and software development teams, both within and outside their own field. |
X |
|
|
|
|
10 |
They keep up with current developments in computer engineering and related areas with a consciousness of the necessity of continuous professional development. |
X |
|
|
|
|
11 |
They utilize Turkish and English fluently and effectively for tracking scientific and technical resources, presenting projects, and writing academic publications. |
X |
|
|
|
|
12 |
They are aware of the legal consequences of information technology applications and the individual, corporate, social, and universal impacts. |
X |
|
|
|
|
13 |
Geliştirdiği yazılım ve sistemlerde mesleki ve etik sorumluk bilinciyle hareket eder. |
X |
|
|
|
|
14 |
They design and develop computer systems that will facilitate human life or increase comfort with analytical thinking skills. |
X |
|
|
|
|
15 |
They possess awareness as an individual who is informed about current and historical events and can interpret them rationally and draw conclusions. |
X |
|
|
|
|
|