Hello,
Post by frankhilemanSomeone decided to do their own comparision of Xamlon and MyXaml.
Thanks for highlighting the post. If anyone wants to discuss Martin
Maat's post you're more than welcome. To make it easy on everybody
here's the complete post:
For the last couple of days I have been trying to get started with
XAML and I am having mixed feelings so far. I first want to share my
experiences and then ask a specific question.
A couple of months ago I first read about Xamlon and thought it would
be worth while to check out. When I was finally ready to do so, having
an application in mind, I looked a bit further and found MyXaml and
wanted to know the differences upfront in order to make the right
choice, not willing to learn both. I learned that Xamlon targeted
Longhorn, with the ambition to be as close to the final Longhorn XAML
as possible once that would be released. Fine, that was basically what
I was after. Then I read about MyXaml, which had some smart-ass author
that was critsizing the Avalon team for most everything they were
doing on the XAML front. His MyXaml would be much cleaner, better,
blah blah, et cetera... Well, it didn't seem unreasonable but since
my first aim was to prepare for Longhorn, I chose Xamlon.
After a day and a half of sheer agony I removed Xamlon and installed
MyXaml after all which, up until now, leaves a far better impression.
I will present the biggest drawbacks of Xamlon as I experienced them.
"Not to bash you guys, I just want you to do better" (that's what the
MyXaml guy says to the Avalon team all the time, I like that approach).
- It "messes up" the .NET namepaces, inserting all sorts of extra
bits, particularly in System.Windows.Forms. Pretty indiscrete. It
installs a ton of assemblies, creating name clashes and ambiguities
with existing .NET classes.
- It has this whizard/plug-in that sets up your application which is
nice, the first time, but then it won't let go. It re-applies that
script every time you compile, ruining every modification you made. It
has ideas about how to distribute code over files and what to name
classes and objects (and files). "You want to change that? Ha! We
laugh in your face. We'll take care of that for you! Again and again
and again..." Well, not anymore, it's gone now.
- it is just not half finished, 0.9 beta 5 is suggesting way more then
it delivers. For instance, it inserts pointless C# code like
<property> = null;
in the initialization section of the form that causes the application
to blow up. You have to remove it first. A moment later the line is
added again. It doesn't get more annoying than that.
- it has some controls which suggest they enable you to embed XAML
into your own app. I remember ElementHost. If you use that and work
your way against the plug-in grain towards compilation and manage to
run the app, it blows up at run-time complaining you need to use some
other control first. Oh, by the way, these components are not
installed by the installer, I had to browse to them and add them to
the toolbox myself. It said something about frames, I tried the frame
and it gave me some other error at runtime leaving me guessing what I
was doing wrong.
Well, don't I read the documentation? Am I just going by trial and
error here and expect things to work? Yes, because there is no
documentation. It does have shortcuts to what should be on-line
documentation but the page is empty. It says something like "coming
soon". We have all seen that before.
Finally, the de-installer doesn't work. It does take out the assembly
registrations from the GAC (good thing!) but the files under Program
Files are left untouched. Okay, i can take care of that...
Xamlon just did not seem targeted at the developer at all. So I went
for MyXaml, the stuff from the smart-ass with the beard and hat
standing on top of the Rocky Mountains and I haven't been disappointed
yet. Much cleaner, just a number of assemblies all discretely using
the MyXaml namespace, well documented with examples and tutorials, no
annoyances so far and it has a nice validator (MyLint) that helps you
getting your souce right. There is one thing that seems to be common
among XAML sub-systems though.
They all (well, at least the two I looked at) seem to assume that I
want to create this application featuring this one main XAML form.
That is not what I want. I want to say "This is my container (just a
control acting as a parent), this is my XAML, now go ahead and combine
them for me". I want to host a piece of XAML in my own application and
interact with it. I haven't found a single example doing that, they
all start with Form as the outer element. If I replace Form with
something else it probably works but it blows up as soon as the
control finds it has no parent. Fair enough. But can it be done? It
seems such a common application that everybody wants.
I may have missed a thing or two, these are just first impressions
from a fairly experienced programmer getting his feet wet with XAML.
Martin.
What your take on it? Do you prefer MyXAML over MS XAML?
- Gerald
---------------------------
Gerald Bauer
Rich Client Conference (RichCon) 2005 - http://richcon.com
------------------------ Yahoo! Groups Sponsor --------------------~-->
Make a clean sweep of pop-up ads. Yahoo! Companion Toolbar.
Now with Pop-Up Blocker. Get it for free!
http://us.click.yahoo.com/L5YrjA/eSIIAA/yQLSAA/nhFolB/TM
--------------------------------------------------------------------~->