ChrisAn beat me to it: Uri vs Strings
Last night I caught up on a 50+
message thread over one of our design aliases with many of the “big dogs” on the
WinFX team vehemently disagreeing. It is the issue of Strings
vs. Uri instances. Honestly, I
don’t know where I personally come down on this one yet. I am a huge, huge fan of making
developers lives easier – anything we can do to push work ON developers at
Microsoft that takes works OFF out customers is goodness to me. That is, after all, the point of the
framework.
I mean, do we gain a lot by making
developers type
Foo (new Uri (“http://foo.bar.com”)) rather than Foo (“http://foo.bar.com”)? Can you imagine the number of new Uri()
calls there will be in reasonable Indigo code? This not a performance argument, as the
2nd option will undoubtedly just create a Uri instance to validate
the argument. It is simply a
question of developer satisfaction.
On the other hand I have a sneaking
feeling (no, I am sure) I don’t really appreciate the effect of pushing this
work on MS developers… Are we just leading developers into a pit of despair by
using strings for Uris? Will FxCop and design guidelines be
enough to keep us out of trouble? I
just don’t know… yet ;-)
Please comment on Chris’s
blog so we have it all in the same place as the debate internally
continues.