views:

36

answers:

2

I want to develop a programming tool for developers which can do automatic xml code generation for specifying a GUI design and its controls. The aim is to allow non-programmers specify GUI controls(which in this case perform higher level task unlike WinForms ) from a GUI. So the xml code generated is essentially an internal representation which programmers can understand and further use in any automatic GUI generator.

So the workflow is GUI(computer-novices)->xml(for programmers)->GUI(computer-novices).
Is there a Microsoft project similar to this?

+2  A: 

Is there a Microsoft project similar to this?

Expression Blend -> XAML -> Visual Studio

Jimmy
+1 . I think you are correct. You may want to add some more explanation or a link explaining how to use the workflow.
Preet Sangha
@Preet: The workflow is pretty trivial. You can open the same project file in either tool.
Jimmy
this one seems like GUI(non-programmers)->xml(for programmers)->IDE(programmers)... and then one more step is required to get the final usable app by non-programmers..Also, expression blend is for designers.I want something that can be used by people having little computer experience....i'll edit that
iceman
you can always go back to the GUI at any time. In fact, the programmer and the designer could both continue making changes.
Jimmy
A: 

It sounds like you should create a Domain-Specific Language (DSL) to describe the problem domain of a GUI. Then have your tool consume instances of this DSL to generate the code.


In writing this answer, I was thinking of the capabilities of the Domain-Specific Language Tools from Microsoft, part of the Visual Studio SDK. They allow you to create DSL and a graphical designer that can be used to create instance documents. The instance documents are in XML, with a schema produced by the DSL tools.

The toolkit is precisely targeted to a framework that will consume instance documents and use the to generate code or other text-based artifacts as part of a Visual Studio project.

An example of its use is the Web Service Software Factory, which combines three of these DSLs to generate the service contract, data contract, and hosting configuration for WCF services.

John Saunders
Downvoter: what's the problem with my answer?
John Saunders
absolutely..the xml will be a new scema and something like xaml/yaml etc, but how to start developing this? this is more like designing a visual programming language rather than a IDE - what if this VPL is a web-app(even better)?
iceman
+1: This answer was my first thought too.
Preet Sangha