Ana içeriğe atla

Ders Detayı

Ders Tanımı

DersKoduYarıyılT+U SaatKrediAKTS
NESNE TABANLI PROGRAMLAMA-Bahar Dönemi3+034
Ders Programı
Ön Koşul Dersleri
Önerilen Seçmeli Dersler
Dersin DiliTürkçe
Dersin SeviyesiLisans
Dersin TürüZorunlu
Dersin KoordinatörüDr.Öğr.Üye. Kevser ŞAHİNBAŞ
Dersi VerenlerDr.Öğr.Üye. Turhan KARAGÜLER
Dersin Yardımcıları
Dersin AmacıBu dersin amacı, öğrencilere BT projelerinde uygulayabilecekleri şekilde nesne tabanlı programlama ilkelerini kavratmaktır.
Dersin İçeriğiBu ders; Nesne yönelimli diller: yapılandırılmış programlama,
prosedürel programlama,Soyut veri tipleri, kapsülleme,Yazılı ve yazılmamış diller, Kuplaj ve uyum,Kapsülleme. Sınıflar ve nesneler. Sınıf üyeleri: Veri üyeleri (alanlar) ve üye işlevleri (yöntemler). Sınıf üyesi görünürlüğü (özel, genel, korumalı). Sınıf değişkenleri ve örnek değişkenler. Sınıf yöntemleri ve örnek yöntemleri. Servis yöntemleri ve destek yöntemleri. kapsam,Sınıf hiyerarşileri. Tek ve çoklu kalıtım. Sınıflar arası ilişkiler.,Bellek yönetimi. Çöp toplama. Yöntemler ve mesajlar. Yöntem imzaları. Metot ve operatör aşırı yüklenmesi. Yöntem geçersiz kılma. Soyut sınıflar. Dinamik (geç) bağlanma. Polimorfizm. Yazılım yeniden. Alt sınıflar (türetilmiş sınıflar). Süper sınıflar (temel sınıflar). Süper sınıf metotları ve yapıcıların istilası.,Nesneler ve değişkenler. Sınıflar vs türleri. delegasyon
, Koleksiyon sınıfları. Sınıf kütüphaneleri.,Birleşik Modelleme Dili (UML). Durum şemaları kullanımı: aktörler, sistem
sınırları, --uses -- ve --extends --,Senaryolar. Sınıf diyagramları: ilişkilendirmeler, toplama, bağımlılık ve
miras. Nesne etkileşim diyagramları, nesne durum geçiş diyagramları.,Nesne kısıtlama dili (OCL): ,Tasarım desenleri. Desen dokümantasyonu: motivasyon, ön koşullar,
yapılar, katılımcılar ve sonuçları. Desen örnekleri: Adaptör, Dekoratör, Yineleyici, Gözlemci, Singleton,Sınıf içi örnek ve proje önerisi,Nesne yönelimli programlama dilinde tasarımların uygulanması,nesne yönelimli kod sınama. Sınıf testleri, sınıf testleri inşası
OCL veya durum geçiş diyagramları, test sürücüsü yapımı. Test etkileşimleri ve sınıf hiyerarşileri; konularını içermektedir.
Dersin Öğrenme KazanımlarıÖğretim YöntemleriÖlçme Yöntemleri
1. Eclipse'i Entegre Geliştirme Ortamı olarak kullanabilecektir.6A
1.1. Eclipse hakkında yeterli bilgi edinir.6A
1.2. Eclipsi niçin ve nasıl kullanacağını bilerek kullanır.6A
2. Okunabilir kod yazmak için standartları ve ilkeleri uygulayabilecektir.6A
2.1. Okunabilir kodları tanımlar. 6A
2.2. Okunabilir kodlar için standart ve ilkelerin ne olduğunu bilir ve uygulamalarında bu standart ve ilkelere uyar.6A
3. Verilen bir problem için sınıf diyagramları, nesne etkileşim diyagramları ve nesne durum geçiş diyagramları üretebilecektir.14, 6A
3.1. Verilen bir problem için sınıf diyagramları üretir.6A
3.2. Verilen bir problem için nesne etkileşim diyagramları üretir. 6A
3.3. Verilen bir problem için nesne durum geçiş diyagramları üretir.6A
4. Nesne yönelimli programlama dilinin temel özelliklerini tanımlayabilecektir.14, 6, 9A
4.1. Nesne yönelimli programlama dilinin ana prensiplerini tanımlar.6A
4.2. Nesne yönelimli programlama dilinin kolaylaştırıcı tarafını uygular6A
5. Nesne yönelimli yazılım geliştirme prensiplerini gösteren kod parçalarını üretip, hata ayıklayabilecektir.6, 9A
5.1. Kod parçalarını nesne yönelimli yazılım geliştirme prensiplerine göre üretir.6A
5.2. Nesne yönelimli yazılım geliştirme prensiplerine göre hataları ayıklar.6A
6. java.io kütüphanesini kullanarak girdi ve çıktı temellerini tanımlayabilecektir.6A
6.1. Java.io kütüphanesini efektif olarak kullanır.6A
6.2. Girdi ve çıktı temellerini tanımlar. 6A
7. Nesne yönelimli tasarım, polimorfizm, bilgi saklaması ve miras kavramlarını tanımlayabilecektir.14, 6A
7.1. Nesne yönelimli tasarım kavramını tanımlar.6A
7.2. Nesne yönelimli polimorfizm kavramını tanımlar.6A
7.3. Nesne yönelimli bilgi saklaması kavramlarını tanımlar.6A
7.4. Nesne yönelimli miras kavramını tanımlar.6A
8. Nesne yönelimli yazılımı test etme prensiplerini tanımlayabilecektir.6A
8.1. Nesne yönelimli yazılımı test eder. 6A
8.2. Test etme prensiplerini tanımlar.6F
Öğretim Yöntemleri:14: Bireysel Çalışma Yöntemi, 6: Deneyimle Öğrenme Modeli, 9: Anlatım Yöntemi
Ölçme Yöntemleri:A: Klasik Yazılı Sınav, F: Proje Görevi

Ders Akışı

SıraKonularÖn Hazırlık
1Nesne yönelimli diller: yapılandırılmış programlama,
prosedürel programlama
2Soyut veri tipleri, kapsülleme
3Yazılı ve yazılmamış diller, Kuplaj ve uyum
4Kapsülleme. Sınıflar ve nesneler. Sınıf üyeleri: Veri üyeleri (alanlar) ve üye işlevleri (yöntemler). Sınıf üyesi görünürlüğü (özel, genel, korumalı). Sınıf değişkenleri ve örnek değişkenler. Sınıf yöntemleri ve örnek yöntemleri. Servis yöntemleri ve destek yöntemleri. kapsam
5Sınıf hiyerarşileri. Tek ve çoklu kalıtım. Sınıflar arası ilişkiler.
6Bellek yönetimi. Çöp toplama. Yöntemler ve mesajlar. Yöntem imzaları. Metot ve operatör aşırı yüklenmesi. Yöntem geçersiz kılma. Soyut sınıflar. Dinamik (geç) bağlanma. Polimorfizm. Yazılım yeniden. Alt sınıflar (türetilmiş sınıflar). Süper sınıflar (temel sınıflar). Süper sınıf metotları ve yapıcıların istilası.
7Nesneler ve değişkenler. Sınıflar vs türleri. delegasyon
, Koleksiyon sınıfları. Sınıf kütüphaneleri.
8Birleşik Modelleme Dili (UML). Durum şemaları kullanımı: aktörler, sistem
sınırları, --uses -- ve --extends --
9Senaryolar. Sınıf diyagramları: ilişkilendirmeler, toplama, bağımlılık ve
miras. Nesne etkileşim diyagramları, nesne durum geçiş diyagramları.
10Nesne kısıtlama dili (OCL):
11Tasarım desenleri. Desen dokümantasyonu: motivasyon, ön koşullar,
yapılar, katılımcılar ve sonuçları. Desen örnekleri: Adaptör, Dekoratör, Yineleyici, Gözlemci, Singleton
12Sınıf içi örnek ve proje önerisi
13Nesne yönelimli programlama dilinde tasarımların uygulanması
14nesne yönelimli kod sınama. Sınıf testleri, sınıf testleri inşası
OCL veya durum geçiş diyagramları, test sürücüsü yapımı. Test etkileşimleri ve sınıf hiyerarşileri
Kaynak
Java programlama dili yazılım tasarımı, Altıntaş, Altuğ Bilgin, 2014, Papatya Yayıncılık
Okuma Listesi 1. Java ile programlama ve veri yapıları, Çobanoğlu, Bülent, 2016 2. Java : nesne yönelimli programlama, Aydın, Ali Orhan, 2012 3. Java ile programlama, Uysal, Mitat, 2013 4. Java How to Program, Deitel & Deitel, Prentice Hall, 9th Edition, 2012 5. Java programming: A beginners Guide to learning Java, step by step. By Troy Dimes 2015 6. Java: A beginner’s Guide. By Herbert Schildt 2014 7. Head First Java, 2nd Edition By Katy Sierra and Bert Bates 2005

Dersin Program Yeterliliklerine Katkısı

Dersin Program Yeterliliklerine Katkısı
NoProgram Yeterliliği Katkı Düzeyi
12345
1
Bilişim ve yönetim alanında teorik bilgileri tanımlar.
X
2
Bilişim ve yönetim alanında gerekli matematiksel ve istatistiki yöntemleri anlatır.
3
Bilişim ve yönetim alanında gerekli en az bir bilgisayar programı kullanır.
X
4
Bilişim ve yönetim alanında gerekli olan mesleki yabancı dil yeterliliğini gösterir.
5
Bilişim projeleri hazırlar ve takım çalışmalarını yönetir.
X
6
Mesleki alanda yaşam boyu öğrenmenin gerekliliği bilinciyle bilim ve teknolojideki gelişmeleri izleyerek kendini sürekli yenileyip edindiği bilgi ve becerileri eleştirel olarak değerlendirir.
7
Bilişim ve yönetim alanında teorik ve uygulamaya yönelik bilgileri kullanır
X
8
En az A1 düzeyinde bir yabancı dili kullanarak güncel teknolojileri takip eder, sözlü / yazılı iletişim kurar.
9
Örgüt / kurumsal, iş ve toplumsal etik değerlerini benimser ve kullanır.
10
Topluma hizmet duyarlılığı çerçevesinde, sosyal sorumluluk ilkelerini benimser ve gerektiğinde inisiyatif alır.
11
Disiplinler arası çalışmalar yürütebilmek için farklı disiplinlerde (ekonomi, finans, sosyoloji, hukuk, işletme) temel bilgileri ve verileri analiz ederek alanında kullanır.
12
Masaüstü, mobil, web gibi farklı platform yazılımlarını tek başına ve/veya bir ekip içerisinde yazar.
X

Değerlendirme Sistemi

Katkı DüzeyiMutlak Değerlendirme
Ara Sınavın Başarıya Oranı 50
Genel Sınavın Başarıya Oranı 50
Toplam 100
AKTS / İşyükü Tablosu
EtkinlikSayıSüresi (Saat)Toplam İş Yükü (Saat)
Ders Saati14342
Rehberli Problem Çözme000
Problem Çözümü / Ödev / Proje / Rapor Tanzimi9327
Okul Dışı Diğer Faaliyetler000
Proje Sunumu / Seminer21224
Kısa Sınav (QUİZ) ve Hazırlığı122
Ara Sınav ve Hazırlığı144
Genel Sınav ve Hazırlığı11212
Performans Görevi, Bakım Planı000
Toplam İş Yükü (Saat)111
Dersin AKTS Kredisi = Toplam İş Yükü (Saat)/30*=(111/30)4
Dersin AKTS Kredisi: *30 saatlik çalışma 1 AKTS kredisi sayılmaktadır.

Dersin Detaylı Bilgileri

Ders Tanımı

DersKoduYarıyılT+U SaatKrediAKTS
NESNE TABANLI PROGRAMLAMA-Bahar Dönemi3+034
Ders Programı
Ön Koşul Dersleri
Önerilen Seçmeli Dersler
Dersin DiliTürkçe
Dersin SeviyesiLisans
Dersin TürüZorunlu
Dersin KoordinatörüDr.Öğr.Üye. Kevser ŞAHİNBAŞ
Dersi VerenlerDr.Öğr.Üye. Turhan KARAGÜLER
Dersin Yardımcıları
Dersin AmacıBu dersin amacı, öğrencilere BT projelerinde uygulayabilecekleri şekilde nesne tabanlı programlama ilkelerini kavratmaktır.
Dersin İçeriğiBu ders; Nesne yönelimli diller: yapılandırılmış programlama,
prosedürel programlama,Soyut veri tipleri, kapsülleme,Yazılı ve yazılmamış diller, Kuplaj ve uyum,Kapsülleme. Sınıflar ve nesneler. Sınıf üyeleri: Veri üyeleri (alanlar) ve üye işlevleri (yöntemler). Sınıf üyesi görünürlüğü (özel, genel, korumalı). Sınıf değişkenleri ve örnek değişkenler. Sınıf yöntemleri ve örnek yöntemleri. Servis yöntemleri ve destek yöntemleri. kapsam,Sınıf hiyerarşileri. Tek ve çoklu kalıtım. Sınıflar arası ilişkiler.,Bellek yönetimi. Çöp toplama. Yöntemler ve mesajlar. Yöntem imzaları. Metot ve operatör aşırı yüklenmesi. Yöntem geçersiz kılma. Soyut sınıflar. Dinamik (geç) bağlanma. Polimorfizm. Yazılım yeniden. Alt sınıflar (türetilmiş sınıflar). Süper sınıflar (temel sınıflar). Süper sınıf metotları ve yapıcıların istilası.,Nesneler ve değişkenler. Sınıflar vs türleri. delegasyon
, Koleksiyon sınıfları. Sınıf kütüphaneleri.,Birleşik Modelleme Dili (UML). Durum şemaları kullanımı: aktörler, sistem
sınırları, --uses -- ve --extends --,Senaryolar. Sınıf diyagramları: ilişkilendirmeler, toplama, bağımlılık ve
miras. Nesne etkileşim diyagramları, nesne durum geçiş diyagramları.,Nesne kısıtlama dili (OCL): ,Tasarım desenleri. Desen dokümantasyonu: motivasyon, ön koşullar,
yapılar, katılımcılar ve sonuçları. Desen örnekleri: Adaptör, Dekoratör, Yineleyici, Gözlemci, Singleton,Sınıf içi örnek ve proje önerisi,Nesne yönelimli programlama dilinde tasarımların uygulanması,nesne yönelimli kod sınama. Sınıf testleri, sınıf testleri inşası
OCL veya durum geçiş diyagramları, test sürücüsü yapımı. Test etkileşimleri ve sınıf hiyerarşileri; konularını içermektedir.
Dersin Öğrenme KazanımlarıÖğretim YöntemleriÖlçme Yöntemleri
1. Eclipse'i Entegre Geliştirme Ortamı olarak kullanabilecektir.6A
1.1. Eclipse hakkında yeterli bilgi edinir.6A
1.2. Eclipsi niçin ve nasıl kullanacağını bilerek kullanır.6A
2. Okunabilir kod yazmak için standartları ve ilkeleri uygulayabilecektir.6A
2.1. Okunabilir kodları tanımlar. 6A
2.2. Okunabilir kodlar için standart ve ilkelerin ne olduğunu bilir ve uygulamalarında bu standart ve ilkelere uyar.6A
3. Verilen bir problem için sınıf diyagramları, nesne etkileşim diyagramları ve nesne durum geçiş diyagramları üretebilecektir.14, 6A
3.1. Verilen bir problem için sınıf diyagramları üretir.6A
3.2. Verilen bir problem için nesne etkileşim diyagramları üretir. 6A
3.3. Verilen bir problem için nesne durum geçiş diyagramları üretir.6A
4. Nesne yönelimli programlama dilinin temel özelliklerini tanımlayabilecektir.14, 6, 9A
4.1. Nesne yönelimli programlama dilinin ana prensiplerini tanımlar.6A
4.2. Nesne yönelimli programlama dilinin kolaylaştırıcı tarafını uygular6A
5. Nesne yönelimli yazılım geliştirme prensiplerini gösteren kod parçalarını üretip, hata ayıklayabilecektir.6, 9A
5.1. Kod parçalarını nesne yönelimli yazılım geliştirme prensiplerine göre üretir.6A
5.2. Nesne yönelimli yazılım geliştirme prensiplerine göre hataları ayıklar.6A
6. java.io kütüphanesini kullanarak girdi ve çıktı temellerini tanımlayabilecektir.6A
6.1. Java.io kütüphanesini efektif olarak kullanır.6A
6.2. Girdi ve çıktı temellerini tanımlar. 6A
7. Nesne yönelimli tasarım, polimorfizm, bilgi saklaması ve miras kavramlarını tanımlayabilecektir.14, 6A
7.1. Nesne yönelimli tasarım kavramını tanımlar.6A
7.2. Nesne yönelimli polimorfizm kavramını tanımlar.6A
7.3. Nesne yönelimli bilgi saklaması kavramlarını tanımlar.6A
7.4. Nesne yönelimli miras kavramını tanımlar.6A
8. Nesne yönelimli yazılımı test etme prensiplerini tanımlayabilecektir.6A
8.1. Nesne yönelimli yazılımı test eder. 6A
8.2. Test etme prensiplerini tanımlar.6F
Öğretim Yöntemleri:14: Bireysel Çalışma Yöntemi, 6: Deneyimle Öğrenme Modeli, 9: Anlatım Yöntemi
Ölçme Yöntemleri:A: Klasik Yazılı Sınav, F: Proje Görevi

Ders Akışı

SıraKonularÖn Hazırlık
1Nesne yönelimli diller: yapılandırılmış programlama,
prosedürel programlama
2Soyut veri tipleri, kapsülleme
3Yazılı ve yazılmamış diller, Kuplaj ve uyum
4Kapsülleme. Sınıflar ve nesneler. Sınıf üyeleri: Veri üyeleri (alanlar) ve üye işlevleri (yöntemler). Sınıf üyesi görünürlüğü (özel, genel, korumalı). Sınıf değişkenleri ve örnek değişkenler. Sınıf yöntemleri ve örnek yöntemleri. Servis yöntemleri ve destek yöntemleri. kapsam
5Sınıf hiyerarşileri. Tek ve çoklu kalıtım. Sınıflar arası ilişkiler.
6Bellek yönetimi. Çöp toplama. Yöntemler ve mesajlar. Yöntem imzaları. Metot ve operatör aşırı yüklenmesi. Yöntem geçersiz kılma. Soyut sınıflar. Dinamik (geç) bağlanma. Polimorfizm. Yazılım yeniden. Alt sınıflar (türetilmiş sınıflar). Süper sınıflar (temel sınıflar). Süper sınıf metotları ve yapıcıların istilası.
7Nesneler ve değişkenler. Sınıflar vs türleri. delegasyon
, Koleksiyon sınıfları. Sınıf kütüphaneleri.
8Birleşik Modelleme Dili (UML). Durum şemaları kullanımı: aktörler, sistem
sınırları, --uses -- ve --extends --
9Senaryolar. Sınıf diyagramları: ilişkilendirmeler, toplama, bağımlılık ve
miras. Nesne etkileşim diyagramları, nesne durum geçiş diyagramları.
10Nesne kısıtlama dili (OCL):
11Tasarım desenleri. Desen dokümantasyonu: motivasyon, ön koşullar,
yapılar, katılımcılar ve sonuçları. Desen örnekleri: Adaptör, Dekoratör, Yineleyici, Gözlemci, Singleton
12Sınıf içi örnek ve proje önerisi
13Nesne yönelimli programlama dilinde tasarımların uygulanması
14nesne yönelimli kod sınama. Sınıf testleri, sınıf testleri inşası
OCL veya durum geçiş diyagramları, test sürücüsü yapımı. Test etkileşimleri ve sınıf hiyerarşileri
Kaynak
Java programlama dili yazılım tasarımı, Altıntaş, Altuğ Bilgin, 2014, Papatya Yayıncılık
Okuma Listesi 1. Java ile programlama ve veri yapıları, Çobanoğlu, Bülent, 2016 2. Java : nesne yönelimli programlama, Aydın, Ali Orhan, 2012 3. Java ile programlama, Uysal, Mitat, 2013 4. Java How to Program, Deitel & Deitel, Prentice Hall, 9th Edition, 2012 5. Java programming: A beginners Guide to learning Java, step by step. By Troy Dimes 2015 6. Java: A beginner’s Guide. By Herbert Schildt 2014 7. Head First Java, 2nd Edition By Katy Sierra and Bert Bates 2005

Dersin Program Yeterliliklerine Katkısı

Dersin Program Yeterliliklerine Katkısı
NoProgram Yeterliliği Katkı Düzeyi
12345
1
Bilişim ve yönetim alanında teorik bilgileri tanımlar.
X
2
Bilişim ve yönetim alanında gerekli matematiksel ve istatistiki yöntemleri anlatır.
3
Bilişim ve yönetim alanında gerekli en az bir bilgisayar programı kullanır.
X
4
Bilişim ve yönetim alanında gerekli olan mesleki yabancı dil yeterliliğini gösterir.
5
Bilişim projeleri hazırlar ve takım çalışmalarını yönetir.
X
6
Mesleki alanda yaşam boyu öğrenmenin gerekliliği bilinciyle bilim ve teknolojideki gelişmeleri izleyerek kendini sürekli yenileyip edindiği bilgi ve becerileri eleştirel olarak değerlendirir.
7
Bilişim ve yönetim alanında teorik ve uygulamaya yönelik bilgileri kullanır
X
8
En az A1 düzeyinde bir yabancı dili kullanarak güncel teknolojileri takip eder, sözlü / yazılı iletişim kurar.
9
Örgüt / kurumsal, iş ve toplumsal etik değerlerini benimser ve kullanır.
10
Topluma hizmet duyarlılığı çerçevesinde, sosyal sorumluluk ilkelerini benimser ve gerektiğinde inisiyatif alır.
11
Disiplinler arası çalışmalar yürütebilmek için farklı disiplinlerde (ekonomi, finans, sosyoloji, hukuk, işletme) temel bilgileri ve verileri analiz ederek alanında kullanır.
12
Masaüstü, mobil, web gibi farklı platform yazılımlarını tek başına ve/veya bir ekip içerisinde yazar.
X

Değerlendirme Sistemi

Katkı DüzeyiMutlak Değerlendirme
Ara Sınavın Başarıya Oranı 50
Genel Sınavın Başarıya Oranı 50
Toplam 100

Sayısal Veriler

Öğrenci Başarı Durumu

Ekleme Tarihi: 06/07/2022 - 15:07Son Güncelleme Tarihi: 06/07/2022 - 15:09