From developer apple :https://developer.apple.com/library/ios/documentation/General/Conceptual/Devpedia-CocoaApp/Animation.html
------------------Storyboard----------------------
1.一个scene对应一个简单的View Controller和它的Views
ios中一个scene就表示了整个屏幕的内容,在ipad中,一个屏幕中同一时间可以有很多scene
你可以override awakeFromNib来结束view controller从stroy board加载所有的object
2.一个segue管理两个Scene之间的转换
你可以通过prepareForSegue:sender:来在两个scene之间传输数据。当一个segue被激活时,这个方法就会被调用
你可以通过performSegueWithIndentified:sender:这个方法来强制要求执行一个屏幕转换
-------------------------Delegation----------------------------
Delegation 和 Cocoa Frameworks
delegating object通常是一个framework object,the delegate 通常是一个custom controller object。
在一个managed memory enrironment中,the delegating object会对它的delegate维持一个weak reference;在一个garbage- collected environment中,the receiver会对他的delegate维持一个strong reference。
AppKit framework的NSWindow class的一个instance是一个delegating object。NSWindow声明了一个protocol,windowShouldClose:方法,当用户点击了windows中的close box,window object会发送windowShouldClose: 给它的delegate,让它来确认window的closure。delegate会返回一个Boolean value ,来控制window object的行为。
Delegation and Notification
一个delegate只需实现framework class中定义的notification method,来接受特别的notification message。 object向observers提交一个NSWindowWillCloseNotification,但是却向他的delegate发送windowShouldClose:message
Data source