CodeBlanks Logo Icon CodeBlanks

Birleştirme

C# kursu · Başlangıç · Ders 87/116

Menü döngüsüyle çalışan bir CLI uygulaması yazarsın.

Birleştirme

Son derste tüm parçaları birleştirip çalışan bir CLI uygulaması elde edeceğiz. Main içine AddTask ile görev ekleme, CompleteTask ile durum güncelleme, ListTasks ile listeleme ve Console.WriteLine(tasks.Count) ile toplam sayıyı yazdırma çağrılarını sırayla koyacağız.

Bu dersin amacı ayrı parçaları gerçek bir akışa dönüştürmek. Gerçek CLI uygulamalarında bir menü döngüsü olur; biz burada doğrudan sabit komut dizisini çalıştırarak projeyi tamamlıyoruz.

Menü döngüsü kavramı

Gerçek CLI uygulamaları bir menü döngüsü içinde çalışır: kullanıcıdan komut okunur, komuta göre ilgili metot çağrılır ve bu döngü kullanıcı çıkış yazana kadar devam eder. Bu projede menüyü sabit komutlarla simüle ediyoruz.

Akış şu sırayı izler: görevleri ekle, listede göster, istenen görevi tamamlandı işaretle, sonra toplam sayıyı yazdır. Bu yapı, gerçek bir etkileşimli uygulamanın iskeletidir.

Uygulama Tüm akışı Main içinde birleştir

Main içine tüm akışı yaz: AddTask(tasks, "Ekmek al"), AddTask(tasks, "Süt al"), CompleteTask(tasks, 0), ListTasks(tasks) ve en son Console.WriteLine(tasks.Count).

Örnek çözümü göster
Main içine sırayla AddTask(tasks, "Ekmek al"); AddTask(tasks, "Süt al"); CompleteTask(tasks, 0); ListTasks(tasks); Console.WriteLine(tasks.Count); yaz.
Örnek çözüm:
using System;
using System.Collections.Generic;

class Task
{
    public string Title;
    public bool IsDone;
}

class Program
{
    static void AddTask(List<Task> tasks, string title)
    {
        tasks.Add(new Task { Title = title, IsDone = false });
    }

    static void ListTasks(List<Task> tasks)
    {
        foreach (Task t in tasks)
        {
            Console.WriteLine(t.Title);
        }
    }

    static void CompleteTask(List<Task> tasks, int index)
    {
        tasks[index].IsDone = true;
    }

    static void Main()
    {
        List<Task> tasks = new List<Task>();
        // Tüm akışı buraya yaz
        AddTask(tasks, "Ekmek al");
        AddTask(tasks, "Süt al");
        CompleteTask(tasks, 0);
        ListTasks(tasks);
        Console.WriteLine(tasks.Count);
    }
}

Proje tamamlandı

Tebrikler! Beş derslik projenin sonuna geldin. Bir yapılacaklar listesi CLI uygulaması yazdın; Task sınıfı, AddTask, ListTasks ve CompleteTask metotlarını tanımladın ve hepsini Main içinde birleştirdin.

Bu projede gördüğün yapı — veriyi bir sınıfta modelleme, işlemleri ayrı metotlara bölme ve ana akışta bunları sırayla çağırma — gerçek C# uygulamalarının temelidir. İleride menü döngüsü, dosyaya kaydetme ve konsol girişi ekleyerek bu uygulamayı genişletebilirsin.

Kendini test et

  1. İki görev eklenince Count çıktısı nedir?

    List<Task> tasks = new List<Task>();
    tasks.Add(new Task { Title = "Ekmek al", IsDone = false });
    tasks.Add(new Task { Title = "Süt al", IsDone = false });
    Console.WriteLine(tasks.Count);
    • 2
    • 0
    • 1
    • Ekmek al
    Cevabı göster

    2 — Doğru. İki Add çağrısı listede iki görev bırakır; Count 2 olur.

  2. Yöntemi anlamına eşle

    AddTask
    Görev ekler
    ListTasks
    Listeler
    CompleteTask
    Tamamlar
    tasks.Count
    Görev sayısı
  3. ListTasks çağrısı

    List<Task> tasks = new List<Task>();
    AddTask(tasks, "Ekmek al");
    ____
    
    Cevabı göster
    List<Task> tasks = new List<Task>();
    AddTask(tasks, "Ekmek al");
    ListTasks(tasks);
    

Başlangıç bölümündeki tüm dersler