Kürzlich hatte ich an einem Interview teilgenommen und diese Frage erhalten:
Frage: Designen Sie mit den folgenden Entitäten eine Klassendiagramm oder Skelettcode:
Die Entitäten sind:
Kleidungsstück
Hemd
Hose
Stoff
Knöpfe
Reißverschluss
Das Beste, was ich tun konnte, war folgendes:
class Hemd : Stoff
{
Knöpfe knöpfe {get;set;}
// Erbt alle Stoffmethoden
HemdMachen()
{
// hier ein Hemd machen
}
}
class Hose : Stoff
{
Knöpfe knöpfe {get;set;}
// Erbt alle Stoffmethoden
HoseMachen()
{
// hier eine Hose machen
}
}
class Stoff
{
private MaterialArt materialArt {get;set;}
private Stoffart stoffart {get;set;}
Stoff(MaterialArt mArt, Stoffart sArt)
{
this.materialArt = mArt;
this.stoffart = sArt;
}
public GetStoffMaterial();
public GetStoffart();
}
class Kleidungsstück : IKleidungsstück
{
Preis preis {get;set;}
Zielgruppe zielgruppe {get;set;}
}
enum Stoffart
{
Stoff_Formal,
Stoff_Casual,
}
enum Materialart
{
Stoff_Baumwolle,
Stoff_Seide,
Stoff_Wolle,
}
class Knöpfe
{
Farbe farbe {get;set;}
Form form {get;set;}
}
class Reißverschluss
{
Farbe farbe {get;set;}
Größe größe {get;set;}
}
Aber ich sehe immer noch viele Dinge, die im obigen Skelettcode fehlen.
- Wie kann ich
Kleidungsstück
mit den anderen Entitäten in Beziehung setzen (Objektbeziehung! ?) - Was kann der Rückgabetyp der Funktionen
HemdMachen()
undHoseMachen()
sein? - Bei der Beantwortung dieser Fragen, welche Herangehensweise ist am besten? Mit anderen Worten, wie geht man am besten mit solchen Fragen um?
Jegliche Eingaben dazu sind willkommen. (Wenn dies nicht die richtige Frage ist, die hier gestellt werden soll, lassen Sie es mich bitte wissen, damit ich dies auf die richtige Stackoverflow-Seite verschieben kann!)