• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: Replacing objects
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Replacing objects


  • Subject: Re: Replacing objects
  • From: WT <email@hidden>
  • Date: Tue, 23 Dec 2008 01:30:25 +0100

On Dec 23, 2008, at 1:04 AM, Kyle Sluder wrote:

On Mon, Dec 22, 2008 at 6:03 PM, WT <email@hidden> wrote:
Of course,
the proxy object's class has to share the same interface as the class of the
objects it represents so that your code doesn't need to know whether it's
dealing with a proxy or with the real thing.

This isn't true in Objective-C. Take a look at NSProxy, the canonical implementation of the very pattern you're describing. To state this is to completely miss the characteristics that define Objective-C.

One is not obligated to use NSProxy to implement the Proxy pattern. I must admit not being all that familiar with NSProxy, but having the proxy and the object it stands for share the same public API (by being instances of subclasses of the same abstract class) seems to me to be a good thing since the object and its proxy can be transparently swapped in code. If I understand NSProxy correctly, you lose that transparency when you use it, because NSProxy and NSObject are in different inheritance trees.


Like Ken said, you're probably doing something very wrong.

Not me, but Dimitri. I agree, though, that his design can be improved so he won't need to do what he described.


Wagner
_______________________________________________

Cocoa-dev mailing list (email@hidden)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden


  • Follow-Ups:
    • Re: Replacing objects
      • From: "Shawn Erickson" <email@hidden>
    • Re: Replacing objects
      • From: Mike Abdullah <email@hidden>
References: 
 >Re: Replacing objects (From: WT <email@hidden>)
 >Re: Replacing objects (From: "Kyle Sluder" <email@hidden>)

  • Prev by Date: Re: Debugging memory smashers with GC
  • Next by Date: Re: Debugging memory smashers with GC
  • Previous by thread: Re: Replacing objects
  • Next by thread: Re: Replacing objects
  • Index(es):
    • Date
    • Thread