Menu
Coddy logo textTech

Das Draw-Trait

Teil des Abschnitts Object Oriented Programming der Rust-Journey von Coddy. Lektion 49 von 61.

challenge icon

Aufgabe

Einfach

Lassen Sie uns mit dem Aufbau eines Dokumentensystems beginnen! In diesem Projekt erstellen Sie ein flexibles Framework für das Rendern von UI-Komponenten unter Verwendung von Trait-Objekten. Die Grundlage beginnt mit der Definition eines Draw-Traits in einer eigenen Moduldatei.

Sie werden zwei Dateien erstellen, um Ihren Code zu organisieren:

  • draw.rs: Definieren Sie einen öffentlichen Draw-Trait mit einer einzelnen Methode namens draw, die &self entgegennimmt und eine Ausgabe druckt. Dieser Trait dient als Vertrag, den alle UI-Komponenten erfüllen müssen.
  • main.rs: Binden Sie Ihr draw-Modul ein und erstellen Sie eine einfache Struktur namens Label mit einem öffentlichen text-Feld (ein String). Implementieren Sie den Draw-Trait für Label, sodass der Aufruf von draw() den Text des Labels ausgibt.

Erstellen Sie in Ihrer Hauptfunktion eine Label-Instanz und rufen Sie deren draw()-Methode auf, um den Text anzuzeigen.

Die folgende Eingabe wird bereitgestellt:

  • Ein String, der den Text des Labels darstellt

Ihre Ausgabe sollte genau der Text des Labels in einer einzelnen Zeile sein.

Probier es selbst

mod draw;

use draw::Draw;

// TODO: Definiere ein öffentliches struct namens Label mit einem öffentlichen text-Feld (String)

// TODO: Implementiere das Draw-Trait für Label
// Die draw-Methode sollte den Text des Labels ausgeben

fn main() {
    let mut input = String::new();
    std::io::stdin().read_line(&mut input).expect("Failed to read line");
    let text = input.trim().to_string();

    // TODO: Erstelle eine Label-Instanz mit dem eingegebenen Text
    // TODO: Rufe die draw()-Methode für das Label auf
}

Alle Lektionen in Object Oriented Programming

Übe selbstständig: Online-Rust-Compiler