iOS では window を頂点としたツリー構造になっています。
一般的には window には一つのビューが追加されていて、これをルートビューと呼びます。

XCode でアプリケーション雛形をつくると、ViewContorller.swift ができますが、このビューコントローラは Main.storyboard で定義されているものでこの ViewContoroller に属するビューが、ルートビューになります。

ルートビュー

AppDelegate.swift で

と記述すると

コンソールに

と出力されます。

また ViewController.swift で

と記述すると、コンソールには

先ほどと同じ値をもったものが出力され、同じビューであると確認できます。

ビューは子をもつことが可能です。
ビューを子に追加するには addSubview を使用します。
以下のようルートビューに追加してます。

コンソールには

とルートビューに足されたことが確認できます。
ビューは階層を持つことができるので、先ほど作った子のビューにさらにビューを
足していくようなコードをかくと

入れ子になっていることがコンソールで確認できると思います。

ビューは上下の階層でだけではなく、並列に置くこともできます。

とすると以下のように並列に置かれることがコンソールで確認できます。

UIButton なども UIView を継承しておりアプリケーションの見た目、つまり表示にかかわるものは UIView を継承したものとなります。
今回はコードで書きましたが storyboard でつくると簡単に構造ができると思います。

あわせて読みたい記事