Menu
Coddy logo textTech

Structure du projet

Fait partie de la section Programmation Orientée Objet du Journey C# de Coddy — leçon 62 sur 70.

challenge icon

Défi

Facile

Mettons en place les bases de votre projet de Système de Bibliothèque ! Vous allez créer la structure de fichiers de base qui deviendra une application complète de gestion de bibliothèque au fil des prochaines leçons.

Vous organiserez votre code sur quatre fichiers, chacun ayant une responsabilité spécifique :

  • Book.cs : Ce fichier contiendra votre modèle Book. Pour l'instant, créez une classe Book dans l'espace de noms LibrarySystem avec trois propriétés auto-implémentées : Title (string), Author (string), et IsAvailable (bool, avec true par défaut). Ajoutez un constructeur qui prend le titre et l'auteur comme paramètres.
  • User.cs : Ce fichier contiendra votre modèle User. Créez une classe User dans le même espace de noms avec deux propriétés : Name (string) et MemberId (int). Incluez un constructeur qui accepte les deux valeurs.
  • Library.cs : C'est ici que résidera votre logique principale. Créez une classe Library avec une propriété Name (string) et un constructeur pour la définir. Ajoutez une méthode appelée GetInfo() qui retourne une chaîne de caractères au format "{Name} Library System Initialized".
  • Program.cs : Rassemblez tout ici. C'est votre point d'entrée où vous créerez des instances de vos classes et vérifierez que la structure fonctionne correctement.

Vous recevrez trois entrées :

  • Le nom de la bibliothèque
  • Une entrée de livre au format title|author
  • Une entrée d'utilisateur au format name|memberId

Créez une instance de Library avec le nom donné, un Book avec le titre et l'auteur fournis, et un User avec le nom et l'ID de membre fournis. Imprimez ensuite trois lignes :

  1. Le résultat de l'appel à GetInfo() sur votre bibliothèque
  2. Les informations du livre au format Book: {Title} by {Author} - Available: {IsAvailable}
  3. Les informations de l'utilisateur au format User: {Name} (ID: {MemberId})

Par exemple, si les entrées sont :

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

La sortie devrait être :

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

Cette structure suit le Principe de Responsabilité Unique (Single Responsibility Principle) - chaque fichier gère une préoccupation spécifique. Dans les prochaines leçons, vous enrichirez ces classes avec une logique d'emprunt, des fonctionnalités de recherche et une interface console complète !

Essayez vous-même

using System;

namespace LibrarySystem
{
    class Program
    {
        public static void Main(string[] args)
        {
            // Lire les entrées
            string libraryName = Console.ReadLine();
            string bookInput = Console.ReadLine();
            string userInput = Console.ReadLine();

            // Analyser l'entrée du livre (format : title|author)
            string[] bookParts = bookInput.Split('|');
            string bookTitle = bookParts[0];
            string bookAuthor = bookParts[1];

            // Analyser l'entrée de l'utilisateur (format : name|memberId)
            string[] userParts = userInput.Split('|');
            string userName = userParts[0];
            int memberId = Convert.ToInt32(userParts[1]);

            // TODO: Créer une instance de Library avec le library name

            // TODO: Créer une instance de Book avec le title et l'author

            // TODO: Créer une instance de User avec le name et le member ID

            // TODO: Afficher les informations de la bibliothèque en utilisant GetInfo()

            // TODO: Afficher les informations du livre au format : Book: {Title} by {Author} - Available: {IsAvailable}

            // TODO: Afficher les informations de l'utilisateur au format : User: {Name} (ID: {MemberId})
        }
    }
}

Toutes les leçons de Programmation Orientée Objet