Menu
Coddy logo textTech

Proje Yapısı

Coddy'nin C# Journey'sinin Nesne Yönelimli Programlama bölümünün bir parçası. Ders 62 / 70.

challenge icon

Görev

Kolay

Library System projeniz için temeli oluşturalım! Önümüzdeki derslerde eksiksiz bir kütüphane yönetim uygulamasına dönüşecek temel dosya yapısını oluşturacaksınız.

Kodunuzu, her birinin belirli bir sorumluluğu olan dört dosya arasında düzenleyeceksiniz:

  • Book.cs: Bu dosya Book modelinizi içerecek. Şimdilik, Book namespace'i içinde üç otomatik uygulanan özelliğe sahip bir LibrarySystem sınıfı oluşturun: Title (string), Author (string) ve IsAvailable (bool, varsayılan değeri true). Başlık ve yazarı parametre olarak alan bir constructor ekleyin.
  • User.cs: Bu dosya User modelinizi içerecek. Aynı namespace içinde iki özelliğe sahip bir User sınıfı oluşturun: Name (string) ve MemberId (int). Her iki değeri kabul eden bir constructor ekleyin.
  • Library.cs: Temel mantığınız burada bulunacak. Library özelliğine (string) sahip bir Name sınıfı ve bu özelliği ayarlayan bir constructor oluşturun. GetInfo() biçiminde bir string döndüren "{Name} Library System Initialized" adlı bir metot ekleyin.
  • Program.cs: Her şeyi burada bir araya getirin. Burası sınıflarınızın örneklerini oluşturacağınız ve yapının doğru şekilde çalıştığını doğrulayacağınız giriş noktasıdır.

Üç girdi alacaksınız:

  • Kütüphane adı
  • title|author biçiminde bir kitap girdisi
  • name|memberId biçiminde bir kullanıcı girdisi

Verilen adla bir Library örneği, sağlanan başlık ve yazarla bir Book ve sağlanan ad ve üye kimliğiyle bir User oluşturun. Ardından üç satır yazdırın:

  1. Kütüphanenizde GetInfo() çağrısının sonucu
  2. Kitabın Book: {Title} by {Author} - Available: {IsAvailable} biçimindeki bilgileri
  3. Kullanıcının User: {Name} (ID: {MemberId}) biçimindeki bilgileri

Örneğin, girdiler şöyleyse:

City Central
The Great Gatsby|F. Scott Fitzgerald
Alice Johnson|1001

Çıktı şöyle olmalıdır:

City Central Library System Initialized
Book: The Great Gatsby by F. Scott Fitzgerald - Available: True
User: Alice Johnson (ID: 1001)

Bu yapı, Tek Sorumluluk İlkesini izler; her dosya belirli bir sorumluluğu ele alır. Önümüzdeki derslerde bu sınıfları ödünç alma mantığı, arama işlevselliği ve eksiksiz bir konsol arayüzüyle genişleteceksiniz!

Kendin dene

using System;

namespace LibrarySystem
{
    class Program
    {
        public static void Main(string[] args)
        {
            // Girdileri oku
            string libraryName = Console.ReadLine();
            string bookInput = Console.ReadLine();
            string userInput = Console.ReadLine();

            // Kitap girdisini ayrıştır (format: title|author)
            string[] bookParts = bookInput.Split('|');
            string bookTitle = bookParts[0];
            string bookAuthor = bookParts[1];

            // Kullanıcı girdisini ayrıştır (format: name|memberId)
            string[] userParts = userInput.Split('|');
            string userName = userParts[0];
            int memberId = Convert.ToInt32(userParts[1]);

            // TODO: Kütüphane adıyla bir Library örneği oluşturun

            // TODO: Başlık ve yazarla bir Book örneği oluşturun

            // TODO: İsim ve üye kimliği ile bir User örneği oluşturun

            // TODO: GetInfo() kullanarak kütüphane bilgilerini yazdırın

            // TODO: Kitap bilgilerini şu formatta yazdırın: Book: {Title} by {Author} - Available: {IsAvailable}

            // TODO: Kullanıcı bilgilerini şu formatta yazdırın: User: {Name} (ID: {MemberId})
        }
    }
}

Nesne Yönelimli Programlama bölümündeki tüm dersler

Kendi başına pratik yap: Online C# derleyicisi