OO and game design questions

Ian Kelly ian.g.kelly at gmail.com
Tue Oct 19 13:46:50 EDT 2010


On Tue, Oct 19, 2010 at 5:37 AM, Dave Angel <davea at ieee.org> wrote:

>  On 2:59 PM, dex wrote:
>
>> Using strong references, I have to remove room B from list of rooms,
>> and also remove door to room B, as it holds reference to room B. To do
>> that, I have to keep list of doors that lead to room B.
>>
>> Using weak references, I don't have to worry about removing all doors
>> to room B. They all now have a dead reference, which better models
>> actual situation. If part of mine collapses, or if a module on space
>> station is destroyed, the passage to that location does not magically
>> vanish - it's just obstructed.
>>
>> Can you please tell me if there's something wrong with my reasoning?
>>
>>  Simply replace room B with a "destroyed room" object.  That can be quite
> small, and you only need one, regardless of how many rooms are thus
> eliminated.
>

How does this avoid the problem of having to keep a list of doors that lead
to room B?  You can't just replace one object with another.  You would have
to replace every reference to B with a reference to the new object.  This is
no simpler than deleting the references or replacing them with None.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-list/attachments/20101019/d763736b/attachment-0001.html>


More information about the Python-list mailing list