title: Swift: Protocol vs. Struct vs. Class
body: <p>I am starting to learn the Swift language and am having trouble wrapping my head around Protocols, Structs and Classes.</p>
  
  <p>I come from the Android side of programming, so I believe that Swift Protocols are basically Java Interfaces?</p>
  
  <p>What would be proper use cases for each of these?</p>