title: Why you need to add empty constructors for UIViewController subclass in Swift
body: <p>Why I need to add these constructors (empty) even if I will not add some custom initialisation things into <code>UIViewController</code> subclass?       </p>
  
  <pre><code>    override init() {
          super.init()
      }
  
      required init(coder aDecoder: NSCoder) {
          super.init(coder: aDecoder)
      }
  
      override init(nibName nibNameOrNil: String?, bundle nibBundleOrNil: NSBundle?) {
          super.init(nibName: nibNameOrNil, bundle: nibBundleOrNil)
      }
  </code></pre>