"Joseph M. Newcomer" <newcomer@flounder.com> wrote in message
On Wed, 2 Dec 2009 09:40:31 -0800, "David Ching"
<dc@remove-this.dcsoft.com> wrote:
"Joseph M. Newcomer" <newcomer@flounder.com> wrote in message
****
I've never found using multiple fonts a challenge in MFC...
****
It's as easy to use
gradients and such as it is not to, and I dare say the UI was very
attractive (for someone with no artistic skills) and highly usable.
Instead
of .rc files, you specify forms using XAML. That's OK, in fact XAML is
highly expressive and is better than .rc files.
But also in XAML you define things like data binding, animations, etc.
This
is where it is very confusing. The exact XML to specify exactly what you
want is not well documented, you just have to google for an example close
enough to what you want and hope something turns up.
****
See, you are being totally unreasonable again! You expect this to be
*documented*, and
that violates Microsoft's new policy of product development!
(Why pay expensive people to write documentation when the end users of the
product can use
google to find the answers on someone else's blog?)
The documentation is probably being written by the person who is
documenting Manifest
files, so we should see it Real Soon Now.
****
I had a really hard
time with a tree view data bound to an internal class, and I wanted to
specify certain data members to appear in the first level of the tree and
other data members to appear in the second level, etc. but I think I ended
up ditching the data binding and just populated the tree with the text I
wanted. It doesn't help when the API names are really long and have
esoteric meanings either - the API is very far removed from computer
science
fundamentals (they are nowhere to be found) so I could not leverage my
background. This is what I meant by "weird".
****
The people who invent these names are probably not programmers. And why
call a list a
list when you can call it "an ordered container"? (This renaming of basic
concepts is not
limited to Microsoft; it seems to be the latest academic rage, and consist
of either
renamings which are precise but so estoteric only a set theorist can
comprehend them, or
"user-friendly" for poor naive students and therefore completely
unintelligible to anyone
who studied CS longer than five years ago)
****
The API is also immature. For example, I wanted to scroll my view in a
custom way when the scrollbar arrow is clicked. But I was not getting any
event for that. I filed a bug on Connect and (wonder of wonders) actually
did get some feedback that it was a bug and the workaround was very low
level involving some XAML hack, I think.
****
Another philosophy, which came from VB: never expose an interface if it is
useful. It
will only confuse the poor innocent programmer, who will wonder what can
be done with it,
and horror of horrors, might even USE it! I once scrapped a VB3 program
and rewrote it in
MFC in three days, because the next thing the programmer needed to do was
trivial in MFC
and impossible in VB3, and my client was already three months behind
schedule. Oh, and in
another four days, I added all the database support and processing (the
original
programmer had created a cool VB interface after a year of programming,
but it had nothing
behind it!)
****
All in all, WPF is not something an MFC programmer would fall in love with
(at least I didn't). That's why I'm so disappointed in .NET 3 and later.
Instead of continuing the evolution of lovable improvements such as the
migration of assembler -> C -> C++ -> Frameworks like MFC -> Managed
productivity (C# and WinForms), we end up with something not lovable.
****
But cool.
joe
****
-- David
Joseph M. Newcomer [MVP]
email: newcomer@flounder.com
Web: http://www.flounder.com
MVP Tips: http://www.flounder.com/mvp_tips.htm