LoginSignup
3
5

More than 1 year has passed since last update.

【Xcode】ファイルを作成する時のSwift FileとCocoa Touch Classの違い

Posted at

初投稿です。
基本備忘録ですが、同じ疑問を持った方の為になれば幸いです。

今回はXcodeでファイルを作成する時に選択する「Swift File」と「Cocoa Touch Class」の違いをまとめてみました。

結論から申しますと、ファイル作成時にテンプレートがあるかないかだけの違いみたいです。
まず「Swift File」から見ていきましょう。

Swift File

「Swift File」を作成すると下記のような記述がされたファイルが作成されます。
 ※コメント部分は省略しています。

import Foundation

上記のようにこの一行だけ記述されたファイルが作成されます。

「Cocoa Touch Class」

次に「Cocoa Touch Class」はどうでしょう。
「Cocoa Touch Class」を作成する場合は作成時にSub class(継承するクラス)を指定する必要があります。
ここではUITableViewControllerを指定しています。
 ※ここでもコメント部分は省略しています。

import UIKit

class TableViewController: UITableViewController {

    override func viewDidLoad() {
        super.viewDidLoad()
    }
    override func numberOfSections(in tableView: UITableView) -> Int {
        return 0
    }
    override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
        return 0
    }
}

上記の場合はUITableViewControllerを継承したので、必須なメソッドであるnumberOfSectionsとnumberOfRowsInSectionを元から記述してくれているということですね。

まとめ

「Swift File」は何も記述されていない白紙のファイルを作成したい時、「Cocoa Touch Class」は用途に応じて、継承させたいクラスがある時に使うというような解釈でいいと思います。

ここ違うよ!という場所などがありましたら、ご指摘いただければと思います。

3
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
5