NESNE YÖNELİMLİ PROGRAMLAMA
- Ders
- ITEC313 - NESNE YÖNELİMLİ PROGRAMLAMA
- Bölüm
- Bilişim Teknolojileri - İngilizce - Lisans
- Ders Tipi
- Ders
- Durum
- Zorunlu
- Dil
- İngilizce
- Kredi
- 4
- AKTS
- 7
- T+P+L
- 3 + 0 + 2
- Ders Koordinatörleri
- Yrd. Doç. Dr. Dokun Iwalewa OLUWAJANA
- Ön Koşul
- -
- Anahtar Sözcükler
Ders Açıklaması
Nesne Yönelimli Programlama dersinin amacı interaktif bir programlama alanı olan nesne yönelimini ele almaktadır. Bu bağlamda dersin içeriği, sınıfları, sınıfların niteliklerini, davranışlarını ve yöntemlerini de içerecek şekilde, nesneleri ve onların ilişkilerini bilişimsel problemi anlayarak belirlemeyi içerir. Tanımlanan problemin açıklamasına bakarak nesne diyagramlarını oluşturmak, verilen UML sınıf diyagramlarından Java sınıf diyagramlarını oluşturmak, mevcut endüstri standart kodlama ve biçimlendirme kurallarını kullanmak, Java ve Eclipse kullanarak GUI tabanlı uygulamalar oluşturmak, teknik olarak sınıflar, nesneler, miras, polimorfizm, arayüzler, toplama ve soyut sınıf arasındaki farklılıkları belirlemek diğer konulardır. Buna ek olarak, kodun yeniden kullanımı ve yazılım kalite konuları ele alınacaktır ve miras kod kodun yeniden kullanım yoluyla gösterilecektir.
NESNE YÖNELİMLİ PROGRAMLAMA
Değerlendirme Araçları (Aktif Dönem)
Değerlendirme öğesi tanımlanmamış.
Ders çıktıları
- 01 Design and develop non-trivial programs using appropriate object oriented design and development methods
- 02 Use UML Class diagrams efficiently for object oriented software design
- 03 Apply principles of object oriented programming for flexibility, re-use and maintenance purposes
- 04 Practice layered architecture model and develop gradually expanding object oriented programs
Ders Müfredatı
| Hafta | Konu |
|---|---|
| Hafta 1 | What is object oriented programming? The difference between Object Oriented Programming (OOP) and structured programming? |
| Hafta 2 | Java Basics, Swing Library, Variables and I/O, Dialog Boxes |
| Hafta 3 | Structured Programming Components: Sequence (Functions), Selection (Decision Making) and Iteration (Loops) |
| Hafta 4 | GUI Programming: JFrame Class, Labels, Buttons, TextBoxes |
| Hafta 5 | GUI Programming: Checkboxes, RadioButtons, ComboBoxes |
| Hafta 6 | GUI Programming: JMenu, JMenuItems, JMenuBar, Picture Boxes, Customizing Components |
| Hafta 7 | Unified Modelling Language (UML): class definitions, static keywords and class relations. |
| Hafta 8 | Midterm Exam |
| Hafta 9 | Objects and Classes |
| Hafta 10 | Multiple Forms |
| Hafta 11 | Layered Architecture, Auxiliary Classes |
| Hafta 12 | Inheritance and Multiple Inheritance and Abstract classes |
| Hafta 13 | Interfaces and Polymorpism |
| Hafta 14 | Revision and Exercises |
| Hafta 15 | Final Exam |
Referans Kitaplar & Ders Materyalleri
- 01 Java for Students, 5th Edition, Pearson, 2010
- 02 Java How To Program, 9th Edition, Deitel P & Deitel, 2011
- 03 Head First Java, 2nd Edition, O'Reilly Media, 2005
Ders Çıktıları
- L01 Java programlama dilinin temellerini anlayın. Nesneye Yönelik Programlamanın ilkelerini açıklayın. Java için bir geliştirme ortamı kurun. SOLO 3
- L02 Sınıfları ve nesneleri tanımlayın ve bildirin. Yapıcıları ve yöntemleri uygulayın. Kapsülleme kavramını anlayın. SOLO 4
- L03 Java'da kalıtımı uygulayın. Yöntem geçersiz kılma ve dinamik yöntem gönderimini anlayın. Polimorfik davranışı gösterin. SOLO 4
- L04 Soyut sınıflar oluşturun ve kullanın. Arayüzleri ve çoklu mirası uygulayın. Yazılım tasarımında soyutlamanın önemini anlayın. SOLO 4
- L05 Try-catch blokları uygulayın. İstisna hiyerarşisini anlayın. Özel istisnalar geliştirin. SOLO 4
- L06 Java I/O akışlarını kullanarak dosyaları okuyun ve yazın. Dosya ile ilgili istisnaları işleyin. SOLO 4
- L07 ArrayList, HashMap ve diğer koleksiyon sınıflarını kullanın. Tip güvenli koleksiyonlar için jenerikleri uygulayın. SOLO 4
- L08 Singleton, Factory, Observer ve MVC gibi tasarım kalıplarını anlayın ve uygulayın. SOLO 4
- L09 JDBC'yi kullanarak ilişkisel veritabanlarıyla etkileşim kurun. SQL sorguları çalıştırın ve sonuçları işleyin SOLO 4
- L10 İş parçacıkları oluşturun ve yönetin. Senkronizasyon ve iş parçacığı güvenliğini anlayın. SOLO 5
- L11 GUI'lerle etkileşimli Java uygulamaları oluşturun. Kullanıcı olaylarını ve kullanıcı arayüzü bileşenlerini yönetin. SOLO 5
Program Çıktıları
- P01 Kullanıcıların iş verilerine erişmesine izin vermek için çağdaş bir nesne yönelimli dilde bir kullanıcı arabirimi oluşturabilir
- P02 Kullanıcı ihtiyaçlarını tanımlayın ve analiz edin ve bilgi işlem tabanlı sistemlerin seçiminde, oluşturulmasında, entegrasyonunda, değerlendirilmesinde ve yönetiminde bunları dikkate alabilir
- P03 Ortak iş fonksiyonlarını analiz edebilir ve uygun bilgi teknolojisi çözümlerini belirleyebilir, tasarlayabilir ve geliştirebilir
- P04 Uygun problem çözme stratejilerini kullanarak çağdaş iş ortamları için yazılım çözümleri tasarlayabilir ve geliştirebilir
- P05 Çağdaş iş ortamlarını desteklemek için veritabanı sunucusunu yapılandırabilir ve yönetebilir
- P06 Küçük ila orta ölçekli bir şirket için ilişkisel bir veritabanını yönetebilir
- P07 BT tabanlı çözümleri kullanıcı ortamına etkin bir şekilde entegre edebilir
- P08 Profesyonel, etik, yasal, güvenlik ve sosyal konuları ve sorumlulukları anlayabilir
- P09 Profesyonel ortamla uyumlu etkili iletişim becerilerini uygulayabilir
- P10 Profesyonel ortamla uyumlu ekip çalışmasında etkili işbirliği becerilerini uygulayabilirler
Pç-Dç Matrisi
| ÖÇ | P01 | P02 | P03 | P04 | P05 | P06 | P07 | P08 | P09 | P10 | Ortalama |
|---|---|---|---|---|---|---|---|---|---|---|---|
| L01 | 2 | 3 | 2 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
| L02 | 3 | 3 | 3 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 1.3 |
| L03 | 4 | 3 | 3 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 1.4 |
| L04 | 4 | 3 | 3 | 4 | 0 | 0 | 3 | 0 | 0 | 0 | 1.7 |
| L05 | 3 | 0 | 0 | 4 | 0 | 0 | 0 | 4 | 0 | 0 | 1.1 |
| L06 | 0 | 0 | 3 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 0.6 |
| L07 | 3 | 3 | 4 | 4 | 0 | 0 | 3 | 0 | 0 | 0 | 1.7 |
| L08 | 4 | 3 | 4 | 4 | 0 | 0 | 4 | 0 | 0 | 0 | 1.9 |
| L09 | 4 | 3 | 4 | 4 | 4 | 4 | 4 | 0 | 0 | 0 | 2.7 |
| L10 | 3 | 0 | 0 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0.7 |
| L11 | 4 | 3 | 4 | 4 | 0 | 0 | 4 | 0 | 4 | 0 | 2.3 |