Synthesize A Strategy
I’ll list the rules out first, and then we’ll have a discussion of each one.
- Always make a property for every instance variable.
- If it’s a class, mark it with the retain attribute. Otherwise, mark it with the assign attribute.
- Whenever creating a variable, use the alloc/init/autorelease idiom.
- Whenever setting a variable, always use “self.xxx = yyy” (in other words, use the property).
- For each of your instance variables, call “self.xxx = nil” in dealloc. If it’s an outlet or something you created in viewDidLoad, do the same in viewDidUnload.
For rule2 #2:如果是类的属性用retain,否则,用assign
For rule3 #3:当你用alloc/init/autorelease创建变量时.这种方式,内存在之后会自动释放.如果你需要长期保留变量,你应该赋值为一个属性,放进一个Array里,就好像自动增加引用计数一样。