Gerald Bauer | 26 Apr 03:31
Favicon

MyXAML Lead Weighs In on MSXAML Debate


Hello,

   Marc Clifton who leads the MyXAML project weighs in on the MSXAML debate and writes 
in the MyXAML blog:

   Allow me to chime in on something Joe said:

"XAML provides for very clear and distinct separation of data, functionality, and 
presentation via explicit parts of the language" and also:"[XAML] goes a long way toward 
declarative programming, and provides some very nifty ways of making sure the two stay 
separate".

I find this a bit difficult to swallow and that quite the opposite to be true.  A XAML 
application is an entangled mess of UI state management via property triggers, data 
binding, and UI definition.  Look at a typical example and you'll see the entanglement of 
binding (data), property triggers (functionality), and presentation (object graph).  I don't 
think this helps the concept of declarative programming.  It looks more like an example of 
"how not to write applications" if it were written imperatively.  But then again, this is pretty 
typical.  Just pop open the Visual Studio designer and start adding data sets and SQL 
connections and you get code that is the antithesis of what Microsoft recommends with 
their application blocks.  It looks like XAML isn't going to be any different.  You CAN do 
declarative programming  that way, but a serious programmer would cringe.

I think there's a lot of great things that can be done with xml and object graph mapping, 
but to entangle property triggers and data binding along with the object graph 
representation is not good architecture.  And frankly, as I gain experience with MyXaml 
applications, I'm also concerned with DIRECT xml element/attribute to class/property 
mapping.  The resulting xml is too dependent on the underlying class/property definition.  
While you can do cool things with it (and it is a tool, after all), there's a lot to be said for 
(Continue reading)


Gmane