Objektdesign fuer GUI-Framework



  • Hi,
    ich bin dabei ein Gui zu programmieren. Das ganze soll nach dem Model-View-Prinzip aufgebaut sein, also eine Trennung zwischen Daten und deren Darstellung bieten.
    Ersteres steht so halbwegs und fuer das Design von letzterem habe ich mir so ein paar Gedanken gemacht und das ganze mal in Form eines UML-Diagrammes (keine Garantie fuer Korrektheit 😃 ) dargelegt:
    http://img503.imageshack.us/img503/3950/guiobjektdesignsa3.jpg

    Kurze ergaenzende Erlaeuterung: Widget ist Basisklasse eines jeden Kontrollelements und soll quasi einen ThemePart haben. Dieser sieht fuer jedes Control anders aus. Die Klasse Theme beinhaltet die einzelnen Parts und laed sie. Eine Theme-Factory erzeugt Themes eines bestimmten Types. Durch erzeugen einer neuen Factory (->Ableitung) und Registierung selbiger an einer dafuer zustaendigen Stelle kann das jeweilige Theme bestimmt und damit das Aussehen der Oberflaeche bestimmt werden.

    Nun die Frage(n) 😉
    Was haltet ihr von dem Konzept? Fallen Probleme (Ungereimtheiten?) ins Auge oder denkt ihr das ist so durchaus brauchbar?

    Was mir gerade noch auffaellt: ButtonTheme und StaticTextTheme sollten besser DefaultButtonTheme und DefaultStaticTextTheme heissen, da sie speziell fuer das Default-Theme sind. Bin jetzt nur zu faul das noch zu aendern... 🙂

    Gruss,
    DeSoVoDaMu



  • Wozu willst du ein GUI-Framework bauen? Es gibt doch schon so viele!



  • Es ist einfach so.
    Ich moechte mich jetzt nicht weiter ueber meine Beweggruende auslassen.
    ➡ back to topic bitte



  • du machst dir zu viele Gedanken um das Aussehen..
    Die Eigenschaften deiner Widgets wären wichtiger 😉



  • Sry für die Offtopic-Frage, aber mit welchem Programm hast du die Diagramme gemalt?
    Sieht bissl nach MagicDraw aus



  • staruml könnts auch sein..



  • Ja, es war StarUML. Geht sehr gut damit wie ich finde.



  • Ja, es läuft sehr stabil und kann so ziemlich alles, was man braucht- so man sich etwas in UML auskennt..
    Leider generiert es keine getter und setter- das muss man selber machen.
    Außerdem sind die Java-Generierungen in Java 1.3, also ohne generische Datentypen und Annotations, etc.

    Ansonsten aber nen wirklich schönes und kostenfreies Werkzeug.



  • Ja habs mir grad mal rutnergeladen und bissl damit gespielt.
    Das sieht echt sehr sehr gut aus 👍 Schade, dass ich das bis jetzt noch nicht kannte... vom ersten kleinen Eindruck kommt das echt auch gut an professionelle Tools ran.
    Ok, Codegenerierung keine Ahnung, aber ist für mich eh nicht soo wichtig.

    Mh sry deinen Thread hier damit so verunstaltet zu haben 😉


Log in to reply