I know with exclamation mark I can unwrap an optional value, means I can convert optional type to a 'normal' type. But what about using exclamation in type identifier? I.e.
@IBOutlet weak var back: UIButton!
Why do I need !? Without ! it means back can not take a nil value, isn't it? As Int i means neither i can take a nil value. But then why I need ! in type identifier?