Maltepe Üniversitesi Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü Nesneye Yönelik Programlama (BİL 202) GENEL DERS BİLGİLERİ Öğretim Elemanı : Öğr. Gör. Kadir ÇAMOĞLU Arş. Gör. Derya ERSOY Ofis : 311 Ofis Saatleri : Pazartesi : 11:10-12:00 ve 12:10-13:00 Çarşamba : 12:10-13:00 ve 14.00-14:50 Perşembe : 11:10-12:00 ve 14:00-14:50 Telefon : 02166261050 / PBX: 1408 E-Posta : kcamoglu@maltepe.edu.tr, dersoy@maltepe.edu.tr Sınıf : Lab2, Lab6 Ders Saatleri : Pazartesi 09.10-11.00, LAB2 Salı 16.00 16.50, LAB 6 Çarşamba 11.10-12.00, LAB 6 Perşembe 12.10-13.00, LAB6 Ders Kitabı : Schildt, C# 2.0, Alfa Yayınevi, 2006 Yardımcı : Her Yönüyle C#, Pusula Yayınevi, Sefer ALGAN Kaynaklar DERSİN AMACI Dersin amacı, öğrencileri Nesne Yönelimli Programlama ile tanıştırmak ve NYP nin temel kavramları hakkında bilgi ve beceri kazandırmaktır. DERSİN İŞLENİŞİ Ders ağırlıklı olarak ders kitabı üzerinden işlenecektir. Her derste sunular kullanılarak genel kavramlar anlatılacak, tahta üzerinde çözümlemeler yapılacaktır. Dersin laboratuar saatlerinde öncelikle bir önceki hafta verilmiş olan ödev birlikte çözülecek ve tartışılacaktır. Ardından önceki haftanın teorik olarak işlenmiş olan konuları örneklerle uygulanacaktır. 1
DERSE DEVAM VE KATILIM Dersler katılmak zorunludur. (Yönetmelik madde 23) Derse en az %70 (laboratuar %80) oranında katılmalısınız. Aksi halde dersten kalırsınız. Derse zamanında gelin. 15 dakikadan geç gelenler derse alınmayacaklardır. Derste sorular sormanız ve tartışmalara katılmanız beklenmektedir. Ders boyunca cep telefonlarının kapalı tutulmalıdır. SINAVLAR Dersin değerlendirilmesi amacıyla dönem içinde 2 ara sınav ve dönem sonunda 1 adet final sınavı yapılacaktır. Sınav soruları klasik sistemde problem çözme, çoktan çok seçmeli, çoktan tek seçmeli ve boşluk tamamlama gibi farklı türlerin birleşimi şeklinde gerçekleştirilecektir. Sınavlarda ders kitabı, ders notları ve özel amaçla hazırlanmış notların kullanımı serbesttir. Ancak sınav gözetmeni de dahil olmak üzere hiç kimseden ders ya da sınavla ilgili araç, gereç, kitap, ders notu, kalem, silgi vb. istemek ve konuşmak yasaktır. Sınav boyunca cep telefonları kapalı tutulmak zorundadır. Ayrıca dönem içerisinde 10 adet ev ödevi verilecek ve öğrencilerden bir de proje getirmeleri istenecektir. Ev ödevlerinden ikinci ara sınava kadar olanlar öğrencilerin ara sınav notuna geri kalanlar ise dönem sonu notuna etki edecektir. Proje başlıkları 4. haftada öğrencilerle paylaşılacak, 8. hafta sonuna kadar kimin hangi projeyi yapacağı belirlenmiş olacaktır. Projeler en geç 13. hafta sonunda teslim edilecektir. NOT DEĞERLENDİRMESİ Not değerlendirmesi aşağıdaki gibi olacaktır: Ara sınav 1 (6. Hafta) %15 Ara sınav 2 (10. Hafta) %20 Ödev (1-5) %5 Proje %15 Ödev(6-10) %5 Final %40 %40 %60 Başarılar dilerim. 2
DERS İÇERİĞİ Hft. Konular 1 Dersin Tanıtılması o Ders İçeriği, Değerlendirme vb. Paylaşılması Net in Temel Kavramları Ve Projelerle Çalışmak o Visual Studio.Net Arabirimi o.net Projeleriyle Çalışmak o Visual Studio 2008 Express İle İlk Proje o.net Framework Ve Csarp Temelleri - 1 o.net Framework Ve Csarp Temelleri 2 2 C Sharp ın Temellerini Anlamak 1 o Veri tipleri, literaller, sabitler ve değişkenler o Operatörler ve deyimler o Hazır Fonksiyonlarla/metotlarla çalışmak 3 C Sharp ın Temellerini Anlamak 2 o Karar/Koşul yapıları o Döngüler/Tekrarlar o İstisnai durumların yönetimi 4 Sınıf ve Nesnelere Giriş o Nesneler Yönelimli Programlamanın Temelleri o Sınıfların temel özellikleri o Sınıflara giriş o Alanlar (Fields) o Metotlar o Yapıcılar/yıkıcılar o Özellikler o Sınıf üyelerine erişim 3
5 Diziler, Koleksiyonlar ve Karakter Katarları (Metinler) o Diziler ve dizilerle çalışmak o Koleksiyonlar ve Koleksiyonlarla Çalışmak o Karakter Katarları/ Metinler ve Metinsel İşlemler 6 Metot ve Sınıflara Daha Yakından Bakış Genel Tekrar ARA SINAV 1 o Parametrelerle Çalışmak 7 Metotlar ve Kalıtım o Metotları aşırı yükleme o Statik bileşenleri anlamak o Yinelemeli programlama o Kalıtımın temel unsurları 8 Kalıtım o Kalıtımda Ad gizleme o Kalıtım ve yapılandırıcılar o Kalıtımı engellemek o Kutulama ve kutudan çıkarma Projelerin Belirlenmesi 9 Arabirimler, Yapılar Ve Numaralandırmalar o Arabirimler o.net Arabirimleriyle Çalışmak o Yapılar (Structs) o Yapılar ve Sınıfları Arasındaki Farklar 4
10 o Numaralandırmalar Genel Tekrar ARA SINAV 2 11 Form Tabanlı Windows Uygulamaları Geliştirmek o Windows formları o Standart Windows kontrolleri o Standart diyalog pencereleri o Kullanıcı arabirimi geliştirmek o Olaylarla çalışmak 12 Delegeler, olaylar ve operatörlerin aşırı yüklenmesi o Standart tiplerle operatörlerin aşırı yüklenmesi o Özel tiplerle operatörlerin aşırı yüklenmesi o Delegeler o Olaylar o Jenerikler (Generics) Proje Teslimi 13 Asp.Net temelli web uygulamaları geliştirmek o Proje sunumu o Web uygulamalarının temelleri o Web formlarla çalışmak o Standart web kontrolleriyle çalışmak o Stateless uygulamalar 14 Nesne Yönelimli Analiz, Tasarım ve Uygulamaları o Yazılım İsterleri Yönetimi ve Nesne Yönelimli Analiz o Nesne Yönelimli Yazılım Tasarımı ve Tasarım Kalıpları o Yazılım Geliştirme Platformları ve Nesne Yönelimli Programlama 5