Please consult me with your opinions on the following topic:
I have a model - a structure of the objects. Such as:
Event, containing participants
Current task
Assignee of each task
The model is going to be pickled on the server and transferred over the network to the client GUI application. Because of the pickle I'd want to keep the model classes as simple as possible (i.e. just simple classes with data fields only, no any single method inside). As a result I can't create signals (such as OnUpdate) on the model objects.
Sometimes the server will send model updates. Such as "Task text changed". When the update is applied, I need it to be reflected in the UI. In the case of task text change it shall be change of the label in the UI. I'd want only related controls to be changed, so the whole UI update is not the best solution.
On the other hand, would not like to traverse the whole model in the search of changes - that would be too resource intensive.
So, what is the best pattern of notifying the UI about changes on the plain data structures?