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. "urn:schemas-microsoft-com:office:office" />

I mean, do we gain a lot by making
developers type

Foo (new Uri (“https://foo.bar.com”)) rather than Foo (“https://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.