On Mar 4, 2010, at 4:50 AM, Krzysztof Kosiński wrote:
W dniu 3 marca 2010 03:40 użytkownik Jon Cruz <jon@...18...> napisał:
*) When XML nodes are private, it's much easier to implement backwards compatibility - we just implement the reading of obsolete versions in the corresponding SP object.
Ooh, I'd *VERY* strongly recommend against that. It is basically the design pattern taken by Microsoft for the MS Word "format" and leads to all sorts of problems. Backwards compatibility is made much more difficult by such an approach.
Before you said that separating the XML <-> SP transformation from SPObjects into some external entity is bad. Now you say that leaving it in SPObjects is bad. I'm somewhat confused :)
No, that's not directly what I was talking about.
The problem is in making each and every object responsible for its own serialization, especially when it comes to backwards compatibility. That was the immediate danger I was warning of.
It's a bit quicker to implement initially, but as things progress it starts to bog down. It's also less appropriate for a solution where one group is responsible for all the code involved. In practice I've seen this bite projects in under six months.