Suggested approach: All Swift developers should be able to nail this one:
String? marks an optional string and
String! marks an implicitly unwrapped string.
For bonus points, go further: when would you use one rather than the other? If you're stuck, consider talking about how Interface Builder creates its outlets, and why it does it that way.
Estimated difficulty: Easy
targetEnvironment()compiler condition do?
Link copied to your pasteboard.