I've been reviewing PureMVC, and have a few questions about its architecture:
- Why do proxies have names? I suspect this is to prevent multiple proxies of the same name from being registered. What is the functional benefit of this, however? Why not let users to register multiple proxies of the same class with different names, and decouple this view-specific logic from the proxies themselves?
- Why should proxies be required to expose their data object? Is this not an implementation detail? I understand that a very common subset of cases will map a proxy directly to an object, but this is by no means the dominant case, and again I question why this object must be exposed at all.
Aside from this, I find PureMVC to be a very well-engineered library and would like to thank all its contributors for their hard work.