Swift Salvar estado do controlador de visualização usando o codificador além do fechamento do aplicativo

Estou usando o Xcode 8 e o swift 2.3

Desejo salvar todo o controlador de exibição em arquivo e restaurar o estado, mesmo após o fechamento do aplicativo. Eu procurei em todos os lugares e descobri que precisamos usar o codificador para isso. mas tudo apenas mostra para salvar um objeto. mas aqui eu preciso salvar todo o ViewContoller e subviews.

O ViewCotroller terá três botões

Adicione texto
Adicionar imagem: o usuário pode adicionar qualquer número de visualizações de texto e imagens. Então, eu preciso salvar todas essas informações também.
Adicionar ViewController: o usuário pode ter uma matriz desse viewController e precisa salvar tudo.

Questão 1)

Pode salvar o self.view e salvar todas as subvisões automaticamente?

Questão 2)

Eu preciso iniciar sem codificador no início usando apenas

let nameVccVar = nameVcc()

e

let nameVccVar = nameVcc(coder: CodeVar)

Questão 3)

Como salvar todos esses dados codificados em um arquivo usando o NSKeyedUnarchiver e recuperar novamente?

Por favor, me ajude ou me dê dicas para fazer tudo isso funcionar

class nameVcc: UIViewController
{
    var nameIntVar = 0
    var nameStringVar = "Save this"
    var nameImageVar = UIImage()

    override func viewDidLoad()
    {
        super.viewDidLoad()
    }

    required init?(coder NkdPsgVar: NSCoder)
    {
        super.init(coder: NkdPsgVar)
    }

    override func encodeWithCoder(DkdPsgVar: NSCoder)
    {

    }

    func addTextViewBtnClick()
    {
        let viewVar = UIView()

        // Set many values for view 

        self.view.addSubview(viewVar)
    }

    func addImageViewBtnClick()
    {
        let imgViewVar = UIImageView()

        // Set many values for ImageView

        self.view.addSubview(imgViewVar)
    }
}

Eu também cansei:

convenience init()
{
    self.init()
}

e

convenience init()
{
    self.init(coder: NSCoder())
}

questionAnswers(1)

yourAnswerToTheQuestion