Logikfrage zu der Objektierung



  • Hallo Leute.
    Ich hab mal eine logische Frage.
    Ich nehme mal als Beispiel HTML.

    Wenn ich sagen wir mal zum Beispiel versuche eine Library zu machen die im zusammenspiel ein Funktionsfähigen und sofort ausführbaren code zurückgibt, da ist es klar sinnvoll die TAG's wie sie in html genannt werden als objekte zu representieren, ist es jedoch auch sinnvoll die Attribute die ein Tag haben kann als Objekt zu repräsentieren? Ein Attribut hat ja immer nur einen Wert und könnte ja auch einfach durch einen string ersätzt werden.
    Dazu sollte auch noch erwähnt werden, dass eigentlich jeder Tag jdes Attribut enthalten kann, naja fast jedes...

    Also was währe besser?
    1.) Tag änthält Attribute in form von Strings.
    2.) Tag änthält Atrribute in for von Objekten.

    Mfg Wikinger75!



  • representieren

    versus

    repräsentieren

    und

    änthält

    versus

    enthält

    Zum Thema, die Attribute würde ich als strings belassen. Musst natürlich aufpassen wenn du Zahlenwerte hast, das du die dann vernünftig castest, wenn du sie brauchst zum rechnen oder so.


  • Administrator

    Wäre wohl eher etwas für "Rund um die Programmierung".

    Zu deiner Frage:

    class HTMLElement
    {
    private:
      std::string m_name;
      std::map<std::string, std::string> m_attributes;
    
      // ...
    };
    

    Wobei man natürlich ein wenig aufpassen muss. Zum Beispiel Gross-/Kleinschreibung nicht beachten bei std::map und noch ein paar andere Dinge. Aber was das Design angeht, dürfte das wohl meistens schon reichen. Ausser man will den Attributen noch eigene Funktionalitäten geben, dann müsste man wohl aus diesen auch eigene Klassen machen.

    Grüssli 🙂



  • Zum Thema, die Attribute würde ich als strings belassen. Musst natürlich aufpassen wenn du Zahlenwerte hast, das du die dann vernünftig castest, wenn du sie brauchst zum rechnen oder so.

    Wobei man natürlich ein wenig aufpassen muss. Zum Beispiel Gross-/Kleinschreibung nicht beachten bei std::map und noch ein paar andere Dinge. Aber was das Design angeht, dürfte das wohl meistens schon reichen. Ausser man will den Attributen noch eigene Funktionalitäten geben, dann müsste man wohl aus diesen auch eigene Klassen machen.

    Ähm nein die Klassen der Atribute benötigen keine besonderen Funktionen,
    also wäre hier einfach nur ein string besser, gut
    Danke für eure Antworten!^^
    Mfg Wikinger75!


Anmelden zum Antworten