title: Are optional protocols from Objective-C not something that should be done in Swift?
body: <p>In Objective-C it's a pretty common paradigm to use conforming to a protocol and setting a delegate to allow two objects to communicate with one another. Part of this is optional protocols that they don't <em>have</em> to implement.</p>
  
  <p>It seems Swift doesn't really consider this a part of its language. It has protocols but in order to mark a method in a protocol as optional the protocol needs an <code>objc</code> prefix, telling me that it's also an Objective-C relic?</p>
  
  <p>Is there something we should be doing instead that is more Swift-esque? Passing fancy closures or something?</p>