• 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: Newbie Question on "self"
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Newbie Question on "self"


  • Subject: Re: Newbie Question on "self"
  • From: Todd Heberlein <email@hidden>
  • Date: Mon, 11 Aug 2008 11:17:25 -0700

- (id)initWithString:(NSString *) string {
   self.myString = [[NSString alloc] initWithString:string];
}

Well, you don't need the "self" prefix, but you may want to look at using "setters" and "getters". It would look like this


@interface MyThingy : NSObject {
	...
	NSString*	myString;
	...
};
...
@property (copy) NSString* myString;
...
@end



And then in the implementation file you would have something like this:

@implementation MyThingy
...
@synthesize myString;
...
@end


And then, when you set the value, you do it like this:

[self setMyString: anotherString];


The benefit of this approach is that Apple has a run-time system that monitors access to variables set via setters like this, and other objects can subscribe to receive notifications when the value has changed. In particular, you can use Apple's Controller objects to glue your model (i.e., MyThingy) to GUI elements (e.g., a label in a window). Then whenever you set myString with the setMyString method, then the GUI is automatically updated. Likewise, an update in a GUI element will automatically get pushed into your variable.


All very cool (although a bit confusing when you are first getting started).

Todd

_______________________________________________

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: Newbie Question on "self"
      • From: Charles Steinman <email@hidden>
References: 
 >Newbie Question on "self" (From: Matt Keyes <email@hidden>)

  • Prev by Date: RE: Newbie Question on "self"
  • Next by Date: Re: Newbie Question on "self"
  • Previous by thread: Re: Newbie Question on "self"
  • Next by thread: Re: Newbie Question on "self"
  • Index(es):
    • Date
    • Thread