LoginSignup
25
27

More than 5 years have passed since last update.

プロトコルを実装する時はextensionを使おう

Last updated at Posted at 2016-07-15

はじめに

ネットに公開されているSwiftの記事を見ていると、
(この人、Swiftの書き方あまり知らないのかな?)
と思うことがよくあります。
そこで、私が気になったSwiftの作法について取り上げて行きたいと思います。

まず、第一回は「プロトコルを実装する時はextensionを使おう」です。

具体例

例えば、UITableViewDelegateプロトコルを実装する場合。

よく見るパターン

class NohirapViewController: UIViewController, UITableViewDelegate {

    func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
        // 何か処理をする
    }

}

extensionでまとめる書き方

class NohirapViewController: UIViewController {
}

//MARK:- UITableViewDelegate
extension NohirapViewController: UITableViewDelegate {

    func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
        // 何か処理をする
    }

}

メリットデメリット

メリット

・プロトコルのメソッドごとにグループ化できるので、可読性が上がる。

デメリット

・コード量が若干増える。

まとめ

・extensionはいいぞ!

25
27
6

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
25
27