A good technique for removing Optional
properties.
class LocationViewController: UIViewController {
var notificationMessage: String?
// ...
}
vs.
class LocationViewController: UIViewController {
enum Mode {
case fromNotification(message: String)
case normal
}
var mode: Mode
// ...
}
This optional property doesn’t carry any semantic meaning. What does it mean about the state of this object if the type is nil?