title: Why make window property in the UIApplicationDelegate optional instead of implicitly unwrapped optional?
body: <p>Why <code>var window: UIWindow?</code> not <code>UIWindow!</code>, i.e. why making window optional, isn't each app should have a main UIWindow (without it the app can't function at all) ?!</p>
  
  <p>I saw <a href="https://stackoverflow.com/questions/25175544/uiwindow-does-not-have-member-named-bounds">this answer</a> said it did indeed change from <code>UIWindow!</code> to <code>UIWindow?</code> so it must have a reason. I just can't figure out why. Also, with <code>UIWindow?</code>, the type of the main window becomes double optional, it is really awkward.</p>