Dersin Amacı: |
Bu ders, sınıf objelerinin özellik ve davranışlarıyla nasıl soyutlanacağını öğretir. Öğrenciler, gerçek dünya objelerinin nasıl programlanacağını kavrayarak nesne tabanlı programlamanın üç önemli bileşeni olan sarma, miras ve çok biçimlilik konseptlerini C# (Sharp) kullanarak uygular.
|
Dersin İçeriği: |
Veri tipleri, ifadeler ve komutlar, fonksiyon ve kapsam kuralları, sınıf tanımı, miras, çok biçimlilik, isim yüklemesi, şablonlar, kural dışı durum işleme, girdi/çıktı, nesne tabanlı kavramların C# (Sharp) dili kullanılarak tanıtılması.
|
Hafta |
Konu |
Ön Hazırlık |
1) |
Görsel programlama editörü (C#) kurma ve ayarlarını yapma,
Formlar ve özellikleri,
Değişkenler ve operatörler
|
|
2) |
Diziler
- Dizi değişkenler
- Dizideğişkenlere varsayılan değer ataması
- IEnumerator
- Çok boyutlu diziler
- Matris dizilere ilk değerin atanması
- IEnumerartor & matris dizi
- Fonksiyonlardan matris dizi döndürme
- Jagged dizi döndürmek
|
Konuya ilişkin paylaşılan sunum ve yardımcı kaynaklardan çalışma |
3) |
Prosedürler ve fonksiyonlar
- Prosedure tanımlamak
- Parametreler tanımlı prosedürler oluşturmak
- Overloading
- Ref &Diziler
- Out
-Params
- Fonksiyon tanımlamak
- Fonksiyonların aşırı yüklenmesi
- Fonksiyonlara dizi değişkeni parametreleri
- Recursive,
- Değer döndüren fonksiyonlar
- Fonksiyonlardan dizi değişkeni döndürmek
-Fonksiyonlarda parametre olarak “struct” ve “enum” değişkeni kullanmak
- Kullanıcı tanımlı sınıfları parametre değişkeni olarak kullanma
- IEnumerator & Yield
|
Konuyu internet üzerinden araştırma, BTK akademisi üzerinden C# programlamaya başlama. Konuya ilişkin paylaşılan sunum ve yardımcı kaynaklardan çalışma |
4) |
Karar yapıları ve Döngüler
- Karar yapıları
- If, if-else, if elseif
- Switch
-Switch bloklarında enum yapısının kullanılması
-Döngüler
- for döngüsü
- while döngüsü
- do while döngüsü
- foreach
-Döngüleri Yönlendirme Komutları
- Continue
- Break
|
Konuya ilişkin paylaşılan sunum ve yardımcı kaynaklardan çalışma. Ev ödevini gerçekleştirme |
5) |
Thread
- Cross Thread
- Threadstart
- Thread & ThreadStart
Giriş çıkış pencereleri
- MessageBox
- InputBox
|
Konuya ilişkin paylaşılan sunum ve yardımcı kaynaklardan çalışma |
6) |
Standart Nesneler (Sınıflar)
-Sınıf
- Yapıcı (kurucu) metotlar
- Yapıcı metotların aşırı yüklenmesi
- Dizi parametreli yapıcı metotlar
- Statik yapıcılar
- Statik metot
- Statik class
- Yıkıcı metotlar
- Garbage Collector
- New
- This
|
Konuya ilişkin paylaşılan sunum ve yardımcı kaynaklardan çalışma |
7) |
Standart Nesneler (Sınıflar)
- Class içerisinde fonksiyon oluşturmak
- Class içerisinde procedure tanımlamak
Ara sınav öncesi genel konuların özet tekrarı, sınıf içi soru ve cevap çalışmaları
|
Konuya ilişkin paylaşılan sunum ve yardımcı kaynaklardan çalışma. Ev ödevini gerçekleştirme |
8) |
Ara Sınav |
|
9) |
Gelişmiş nesneler
- Sınıflarda miras
- Private
- Public
- Internal
- Protected
- Base
- Virtual & override
- Değişken tanımlarken farklı sınıflar(class) kullanmak
- Gelişmiş Cast işlemleri
- Protected yapıcı metotlar
|
Konuya ilişkin paylaşılan ders sunum ve yardımcı kaynaklardan çalışma. |
10) |
Gelişmiş nesneler
- Arayüzler (interfaces)
- Interface değişkeni ile ilgili metotları çağırmak
- Birden fazla sınıfın kalıtımını almak
- Interfaceleri tek çatı altında toplamak
- Soyut (abstract) sınıflar
- Çok biçimlilik (Polymorphism)
|
Konuya ilişkin paylaşılan sunum ve yardımcı kaynaklardan çalışma. Ev ödevini gerçekleştirme. |
11) |
Gelişmiş nesneler
- Delegate
- Delege ile birden fazla metodu aynı anda çağırmak
- Delegeleri birleştirmek
- Delege ile kontrollere yordam belirlemek
- Namespace
- İç içe namespaceler
- namespaceleri “using” satırına eklemek
- Sınıfları “using” satırına eklemek
|
Konuya ilişkin paylaşılan sunum ve yardımcı kaynaklardan çalışma. |
12) |
Jenerik Sınıflar
Properties
- get
- set
- get & set
Koleksiyonlar ve linq uygulamaları
- ArrayList ve linq
- List ve linq
- Kullanıcı tanımlı sınıflarda linq
Sınıf kütüphanesi
- Dinamik sınıf kütüphanesinde çalışmak
|
Konuya ilişkin paylaşılan sunum ve yardımcı kaynaklardan çalışma. Ev ödevini gerçekleştirme. |
13) |
Uygulamalar |
12 hafta boyunca paylaşılan sunumlar ve yardımcı kaynaklardan konu tekrarı yapma. Daha önceden yapılmış örnek projelerin incelenmesi. |
14) |
Uygulamalar,
Dönem Sonu sınav öncesi genel konuların özet tekrarı, sınıf içi soru ve cevap çalışmaları
|
12 hafta boyunca paylaşılan sunumlar ve yardımcı kaynaklardan konu tekrarı yapma. Daha önceden yapılmış örnek projelerin incelenmesi. |
|
Dersin Program Kazanımlarına Etkisi |
Katkı Payı |
1) |
Matematik, hesaplama ve bilgisayar bilimleri konularında kuramsal ve uygulamalı bilgilere sahiptir. |
5 |
1) |
Bireysel olarak veya çok disiplinli takımlarda etkin çalışır. |
3 |
1) |
Sürekli mesleki gelişimin gerekliliği bilinci ile bilişim ve/veya bilgisayar bilimleri, bilgi ve iletişim teknolojileri ile ilgili güncel gelişmeleri izler. |
4 |
1) |
Sözlü ve yazılı iletişim kurar, en az bir yabancı dili en az Avrupa Dil Portföyü B1 Genel Düzeyinde kullanarak bilişim ve bilgisayar bilimleri alanındaki bilgileri izler ve meslektaşları ile iletişim kurar. |
3 |
2) |
Bilişim uygulamalarının bireysel, kurumsal, toplumsal ve evrensel boyutlardaki etkilerinin bilincindedir ve girişimcilik, yenilikçilik konuları hakkında farkındalığa sahiptir. |
2 |
2) |
Bilişim ve/veya bilgisayar bilimleri problemlerini saptar, tanımlar ve modeller; bu amaçla uygun analiz ve modelleme yöntemlerini seçer ve uygular. |
4 |
2) |
Bilişim ve/veya bilgisayar bilimleri problemlerinin tanımlarını ve ilk çözümlerini elde etmek amacı ile etkileşimli deneysel ortamlar tasarlar, uygular ve bu ortamları değerlendirir |
4 |
3) |
Mesleki ve etik sorumluluk bilinci ile bilişim uygulamalarının hukuksal sonuçları hakkında farkındalığa sahiptir. |
1 |
3) |
Bilgisayar tabanlı sistemlerde yaşam çevriminin tüm aşamalarını gerçekleştirir. |
4 |
4) |
Hesaplama, matematik ve kuramsal bilgisayar bilimleri bilgileri ile bilgi ve iletişim teknolojilerini, bilişim ve/ya bilgisayar bilimleri problemlerinin çözümleri için seçer ve kullanır. |
3 |