<?xml version="1.0" encoding="UTF-8"?>
<ders kod="EEM103">
  <ad>INTRODUCTION TO PROGRAMMING</ad>
  <program>Electrical and Electronics Engineering (Turkish)</program>
  <genelBilgiler>
    <bilgi ad="Semester">1</bilgi>
    <bilgi ad="Type">Zorunlu</bilgi>
    <bilgi ad="Theory / Practice / Lab">2 / 2 / 0</bilgi>
    <bilgi ad="ECTS">5</bilgi>
    <bilgi ad="Level of study">Lisans</bilgi>
    <bilgi ad="Mode of study">Birinci Öğretim</bilgi>
    <bilgi ad="Instructor">Dr. Öğr. Üyesi Hüseyin Emre KANKAYA</bilgi>
    <bilgi ad="Internship status">Yok</bilgi>
  </genelBilgiler>
  <metin baslik="Course objectives">Bu ders, öğrencilerin C# programlama dilini kullanarak temel yazılım geliştirme prensiplerini öğrenmelerini hedeflemektedir. Ders boyunca, öğrenciler algoritma geliştirme, program akışı kontrolü ve C#’ın sunduğu veri yapılarıyla çalışma konularında temel bilgi ve beceri kazanacaklardır. Ayrıca, C# ile gerçek dünyadaki problemleri çözmek için yazılım geliştirme sürecine dair sistematik bir anlayış geliştirilmesi amaçlanmaktadır.</metin>
  <metin baslik="Course content">Bu ders, C# programlama dilinde temel programlama kavramlarını öğretmeyi hedefler. İçerik, program akış kontrolü için şartlı ifadeler (if-else, else if), tekrarlayan işlemler için döngüler (for, while, do-while) ve birden fazla veriyi saklamak için kullanılan diziler gibi yapıların öğretilmesini kapsar. Ayrıca, temel algoritmalar geliştirme, değişken tanımlama, veri türleri ve giriş-çıkış işlemleri gibi konular üzerinde durulur. Öğrenciler, gerçek dünya problemlerine yönelik çözüm odaklı programlar geliştirmeye yönelik pratikler yaparak temel programlama becerileri kazanır.</metin>
  <metin baslik="Resources">Ders Notları
Murat Yücedağ, C# Eğitim Kitabı, Dikey Eksen Yayıncılık</metin>
  <ogrenmeCiktilari>
    <cikti no="1">Öğrenciler, şartlı ifadeler ve döngü yapıları kullanarak algoritmalar geliştirme ve program akışını kontrol etme becerisi kazanır.</cikti>
    <cikti no="2">Öğrenciler, birden fazla veriyi organize etmek ve işlemek için dizileri tanımlama ve kullanma bilgisi edinir.</cikti>
    <cikti no="3">Öğrenciler, gerçek dünya problemlerine yönelik çözümler üretmek için temel programlama kavramlarını kullanarak etkili ve doğru kod yazabilir.</cikti>
    <cikti no="4">Öğrenciler, yazdıkları programların hatalarını ayıklama, program çıktısını analiz etme ve gerekli düzeltmeleri yapma yetkinliğine ulaşır.</cikti>
  </ogrenmeCiktilari>
  <haftalikKonular>
    <hafta no="1">Programlamaya Giriş ve Geliştirme Ortamı  Programlama dillerinin temel kavramları Visual Studio veya benzer IDE kurulumu İlk programın yazılması ve çalıştırılması</hafta>
    <hafta no="2">Temel Veri Türleri ve Değişkenler  Veri türleri: int, double, string, char, bool Değişken tanımlama ve kullanım kuralları Sabitler ve veri türü dönüşümleri</hafta>
    <hafta no="3">Operatörler ve Temel Hesaplamalar  Atama, aritmetik, karşılaştırma ve mantıksal operatörler Operatör önceliği Basit hesaplama örnekleri</hafta>
    <hafta no="4">Giriş ve Çıkış İşlemleri  Kullanıcıdan veri alma (Console.ReadLine) Ekrana veri yazdırma (Console.WriteLine) String işlemleri</hafta>
    <hafta no="5">Şartlı İfadeler  if-else ve else-if yapıları switch-case kullanımı Karar yapılarında pratik uygulamalar</hafta>
    <hafta no="6">Döngülere Giriş  while ve do-while döngüleri Döngü kontrol ifadeleri (break, continue) Basit tekrar eden işlemler</hafta>
    <hafta no="7">Arasınav</hafta>
    <hafta no="8">Dizilere Giriş  Tek boyutlu diziler: tanımlama, doldurma, erişim Dizilerde sıralama ve arama işlemleri Pratik dizi uygulamaları</hafta>
    <hafta no="9">Dizi ve döngü örnekleri</hafta>
    <hafta no="10">Temel Metotlar ve Fonksiyonlar  Metot tanımlama ve çağırma Parametreler ve dönüş değerleri Kod tekrarını azaltmak için metot kullanımı</hafta>
    <hafta no="11">Metotlar devam</hafta>
    <hafta no="12">Hata Yönetimi ve Debugging  Try-catch blokları ile hata yakalama Hata ayıklama teknikleri Debugging araçlarının tanıtımı</hafta>
    <hafta no="13">Dosya İşlemleri  Basit dosya okuma ve yazma işlemleri Dosyalarla çalışma uygulamaları</hafta>
    <hafta no="14">Genel Tekrar ve Değerlendirme  Önemli konuların gözden geçirilmesi Sorular ve cevaplar</hafta>
    <hafta no="15">Final</hafta>
  </haftalikKonular>
  <degerlendirme>
    <grup baslik="Yarıyıl (Yıl) İçi Etkinlikleri">
      <etkinlik sayi="6" yuzde="40">Laboratuvar</etkinlik>
    </grup>
    <grup baslik="Yarıyıl (Yıl) Sonu Etkinlikleri">
      <etkinlik sayi="1" yuzde="100">Yarıyıl Sonu Sınavı</etkinlik>
    </grup>
    <grup baslik="Yarıyıl(yıl) içi etkinliklerin ve yarıyıl(yıl) sonu sınavının başarı notuna katkısı">
      <etkinlik sayi="0" yuzde="50">Yarıyıl (Yıl) İçi Etkinlikleri</etkinlik>
      <etkinlik sayi="0" yuzde="50">Yarıyıl (Yıl) Sonu Etkinlikleri</etkinlik>
    </grup>
  </degerlendirme>
  <isYuku toplamSaat="113" akts="3.77">
    <etkinlik sayi="1" sureSaat="2" toplamSaat="2">Ara Sınav</etkinlik>
    <etkinlik sayi="1" sureSaat="2" toplamSaat="2">Final Sınavı</etkinlik>
    <etkinlik sayi="14" sureSaat="2" toplamSaat="28">Derse Katılım</etkinlik>
    <etkinlik sayi="6" sureSaat="2" toplamSaat="12">Laboratuvar</etkinlik>
    <etkinlik sayi="1" sureSaat="15" toplamSaat="15">Final Sınavı içiin Bireysel Çalışma</etkinlik>
    <etkinlik sayi="1" sureSaat="12" toplamSaat="12">Ara Sınav İçin Bireysel Çalışma</etkinlik>
    <etkinlik sayi="14" sureSaat="3" toplamSaat="42">Bireysel Çalışma</etkinlik>
  </isYuku>
</ders>
