http://qs1969.pair.com?node_id=309345

elusion has asked for the wisdom of the Perl Monks concerning the following question:

Fellow Monks,

I'm trying to design a news reader. Yes, I know there are plenty out there, but I'm looking to write one in Objective-C for OS X. I'm asking about it here because I'm looking for design help, not code help.

Basically, my confusion lies with keeping track of different groups. I want to create an object for each group and keep additional information for ones that the user subscribes too. By itself, this isn't a problem. The problem is how to handle refreshing the group list.

I have a hash or array that holds all the groups. Some groups just have skeleton information, while others have detailed information about messages. And groups can be added or deleted.

Ideally, when the list is refreshed, I would just create a new object for each group and store them in my collection. But that would mean that I would lose the information for each group. I could hunt down all the groups that have additional information and copy that information over, but I think that would be a lot of work.

Else I could try to modify my collection by dropping the groups that have been removed and adding the groups the have been added. Is there a better way? Are there other times a problem like this comes up? How should I work this? Thanks.