We are developing an embedded type environment and we need to create our own user interface infrastructure.
I have done this before, but I am interested in doing a little research around common design patterns for frameworks.
The types of things that I see as patterns (somewhat far-reaching):
What is the recommended reading for GUI templates?
, , , , " ", . , .
Cocoa/UIKit , "" , (Java Swing) " " (QT).
, , - , , , , . Windows Forms , , Cocoa. ( ) ,
ui, , QT , ,
Gang of Four Decorator , - . , . , .
EDT: MVC , . , . , , , , .
; , :
, , , , , .
/ ? , " ", /.
, , SingStar PS3
.
GUI:
interface IWidget { bool HandleEvent(Event event); // returns true if event was handled // or false if event was ignored } class Button : IWidget { public override bool HandleEvent(Event event) { switch(event.Type) { case EventType.MousePressed: DoStuff(); return true; case EventType.MouseScrolled: return false; } } }
, ( ) . , , . HTML-, , ( HTML) .
Qt . bool QWidget:: event (QEvent *) .
.: KDE. KDE - - ++ , Linux. 2003 KDE.
Dependency injection can sometimes be used.
Learn XAML , especially bindings.
Microsoft has developed really good work in pure XML to describe the GUI layout, and if you use a simplified version of XAML to describe your user interface, you can use their design tools for the user interface layout.