2010-01-06, 09:45
Part of the point of the refactoring I did was to eliminate duplicated code, which you've discarded when you switched VideoTag from a class to an interface. If you look at the serialization methods for MovieTag and TvShowTag now you'll see big chunks of identical code, that previously I had pulled out into VideoTag. In addition to making your code unnecessarily larger, you've also doubled the possible locations for bugs and made sure that you'll likely have to fix bugs or make feature changes in more than one place.
Moving all the properties up into a dictionary in the base class is an interesting idea, but I'm not sure how much use that will be in practice. If you're going to go that direction, why not make the serialization code fully generic as well? You could end up with a place where all the media tags are in essence just name mapping objects, which would actually be pretty cool.
Moving all the properties up into a dictionary in the base class is an interesting idea, but I'm not sure how much use that will be in practice. If you're going to go that direction, why not make the serialization code fully generic as well? You could end up with a place where all the media tags are in essence just name mapping objects, which would actually be pretty cool.