Programm-Design

Koyote

Volt-Modder(in)
Hallo,
ich arbeite zur Zeit fleißig an meinem Programm und der Funktionsumfang wächst (und der Code wird immer unübersichtlicher :ugly:). Jetzt mache ich mir langsam Gedanken um das Design. Die Funktionalität steht zwar im Vordergrund aber ich hätte auch gerne ein besseres Design.
Da ich bisher mich immer nur um die Funktionalität gekümmert habe und nicht um das Design, habe ich keinen Ansatzpunkt.

Könntet ihr mir Tipps geben?

Ich programmiere in Visual Basic.Net (Visual Basic 2008)

Würde mich über Hilfe freuen.

Gruß Tim
 
Ich meinte natürlich das Design der Form-Anwendung, sprich einen gescheiten Hintergrung und Steuerelemente die nicht aussehen wie von vor 50 Jahren :D
 
Es ist immer von Apps die rede, sind damit Apps für mobilgeräte gemeint? Denn ich schreibe Windows Forms Anwendungen für den PC und brauche dafür was.
 
Apps ist die Kurzform für Applikation, was gemeinhin nunmal für Anwendungen bei Mobilgeräten benutzt wird. Eigentlich sind damit halt nur ganz normale Programme gemeint, (glaube ich :D).
 
Hagrid hat recht^^

Das ist ein Styleguide. Der lässt sich auf alles anwenden. Egal ob App für Windows Phone, App für Metro oder ganz normale WPF oder WinForms-App(lication).
Wenn es dir gefällt, kannst du den Apple-Style auch in ein Windows-Programm machen, oder umgekehrt. Es sind nur Design-Richtlinien. Und wenn du es gut umsetzt, kannst du auch eine normale WinForms-Anwendung im Metro-Style richtig schick aussehen lassen.

Hier mal ein Beispiel auf die schnelle:

Metro-Style-WinForms-Skin

Allerdings ist das hier auch nicht optimal umgesetzt. Es ist zuviel zu sehen. Nach dem Styleguide, sollte man nur sehen, was man auch braucht. Unnötige Buttons, Icons und Spielereien weglassen.
 
Danke!
Ist das wirklich eine Windows Forms Anwendung oder eine WPF Anwendung?
Habe mir eben mal in Visual Basic 2010 express edition eine WPF Anwendung erstellt und ein bisschen getestet. Meiner Meinung nach ist das wirklich viel mehr aufs Design bezogen, aber wie sieht es da beim Code aus? Als erstes ist mir aufgefallen, dass man jetzt Label1.Content anstatt Label1.text schreiben muss.
Viele Steuerelemente kenne ich nicht aber wo ist z.B. der Timer? Und was zum Teufel ist eine Passwordbox? Das ist doch einfach eine Textbox, bei der die Zeichen nicht angezeigt werden? (war bei Windows Forms Anwendung nur eine Eigenschaft zu ändern.)
Ansonsten scheint es mir so, als wären Code und Design noch strenger getrennt, kann das sein? Vor allem weil ja unten auch gleich der XAML Code angezeigt wird.

Lohnt es sich aufgrund des Designs auf WPF umzusteigen und da weiter mit VB.NET zu programmieren? Ich weiß nicht warum, aber ich habe bedenken, dass man bei ner WPF Anwendung nicht mehr so viele Möglichkeiten hat was den Code betrifft? Sollte ja eig. auch ramfressender sein oder irre ich mich?

Braucht man für eine Anwendung im Metro Design nicht das SDK, Visual Studio 11 und Windoof 8?
 
Viele Steuerelemente kenne ich nicht aber wo ist z.B. der Timer?
Ich kenne mich nun nicht mit Visual Basic aus, aber für den Normalfall gilt immer: "Wartezeiten sind immer schlecht".
Wartezeiten halten professionelle User auf und sind vielleicht zu schnell für Neueinsteiger, die noch über eine Entscheidung nachdenken wollen. Als Beispiel sei hier mal gesagt:
Wie oft sind dir in Adobe Produkten, Mac OS X und anderen Software-Produkten, die für Ihre Usability bekannt sind schon Timer begegnet ? Die Zahl dürfte gegen Null gehen.
Baue lieber ein paar Pop-Ups mit zwei drei PushButtons für Ja, Nein, Abbrechen (oder wie's dann im konkreten Fall passt) ein und eventuell noch einen "Diese Meldung nicht mehr zeigen"-Knopf. Das macht User auf lange Sicht glücklicher, als Timer ;)
Aber ist nur ein Tipp.

Gruß Jörg
 
Hallo Koyote!

Habe mir eben mal in Visual Basic 2010 express edition eine WPF Anwendung erstellt und ein bisschen getestet. Meiner Meinung nach ist das wirklich viel mehr aufs Design bezogen, aber wie sieht es da beim Code aus? Als erstes ist mir aufgefallen, dass man jetzt Label1.Content anstatt Label1.text schreiben muss.

Kurz gefasst mal die Unterschiede zu Winforms und WPF :
Winforms = veraltet dafür stabil, pixelgrafik, keine klare Trennung von Code und Design/Layout, dafür breitere Zielplattform(auch ältere Systeme)

WPF:
Vektorgrafik,Trennung von Layout und Code durch XAML,Grafikkarte mit Unterstützung ab Direct3D 9 notwendig, Silverlight als Browser-Plugin, Animationen, Videos und andere Formate einsetzbar.

Also um es mal kurz in einem Satz auszudrücken. Es gibt keine klare Antwort hierauf. Es kommt auf deine Zielgruppe an und auf das was du machen möchtest.


Ansonsten scheint es mir so, als wären Code und Design noch strenger getrennt, kann das sein? Vor allem weil ja unten auch gleich der XAML Code angezeigt wird.

Lohnt es sich aufgrund des Designs auf WPF umzusteigen und da weiter mit VB.NET zu programmieren? Ich weiß nicht warum, aber ich habe bedenken, dass man bei ner WPF Anwendung nicht mehr so viele Möglichkeiten hat was den Code betrifft? Sollte ja eig. auch ramfressender sein oder irre ich mich?


Janein, kommt wie gesagt darauf an was du machen möchtest.
Über WPf brauchst du aber echt keine "bedenken" zu haben. MIT XAML kannst du die Anpassungen einfach und schnell vornhemen ohne dir sorgen um die funktionalität machen zu müssen. Die Programmlogik selbst ist wie immer ;) Ramfressersender halte ich zudem für ein Gerücht.
Eher ist entscheidend was und in welcher Form im Code ist .
In deinem Fall möchte ich dir mal Avalon - Tutorial nahelegen zum durchlesen.

greetz aka
 
Zurück