Chapter 3; Strong and Weak References
Chapter 3; Strong and Weak References

	In BNRItem.h, change the container instance variable to be a weak reference.
Chapter 3; Strong and Weak References

	To see an example, change container to be unsafe unretained in BNRItem.h.
Chapter 3; Strong and Weak References

	Be safe. Change this variable back to __weak.
Chapter 3; Properties

	In BNRItem.h, replace all of your accessor methods with properties that are nonatomic.
Chapter 3; Properties

	In BNRItem.h, declare dateCreated as a readonly property so that no setter method is declared for this instance variable.
Chapter 3; Properties

	Add the strong attribute option to the appropriate properties and weak to the container property.
Chapter 3; Properties

	In BNRItem.m, add a synthesize statement for itemName and delete the implementations of setItemName: and itemName.
Chapter 3; Properties;

	In BNRItem.m, synthesize the rest of the instance variables and delete the rest of the accessor implementations.
Chapter 3; Properties

	In BNRItem.m, add back the implementation of setContainedItem:.
Chapter 3; Properties

	In BNRItem.h, remove all of the instance variables as well as the curly brackets.
Chapter 3; Copying

	In BNRItem.h, change the itemName and serialNumber properties to copy.
Chapter 4; Delegation and Core Location

	From the File menu, select New and then New Project.... On the next window, select Application from the iOS section and create a Single View Application. Configure this project as shown in Figure 4.1.
Chapter 4; Projects, Targets, and Frameworks

	To add this framework to your target, click the plus (+) button in the bottom left corner of the Link Binary With Libraries section. A sheet that displays the available frameworks will appear (Figure 4.3). Select CoreLocation.framework from this list and click Add.
Chapter 4; Core Location

	Open WhereamiViewController.h and import the Core Location header file at the top. Also, add an instance variable to hold a pointer to an instance of CLLocationManager – one of the classes in the Core Location framework.
Chapter 4; Core Location

	Open WhereamiViewController.m and delete all of the code between @implementation and @end.
Chapter 4; Core Location

	Now in WhereamiViewController.m, override initWithNibName:bundle: to instantiate a CLLocationManager, set the desiredAccuracy to request the most accurate location data as often as possible, and then tell the CLLocationManager to start working.
Chapter 4; Core Location

	In WhereamiViewController.m, update the initWithNibName:bundle: method to set the delegate property of the location manager to be the instance of WhereamiViewController.
Chapter 4; Core Location

	For now, just have this method print the device’s location to the console.
Chapter 4; Core Location

	You also need to know if the CLLocationManager fails to find its location andwhy. If it fails, CLLocationManager sends a different message to its delegate – locationManager:didFailWithError:. In WhereamiViewController.m, implement this method.