Help us understand the problem. What is going on with this article?

#pragma markで見通しを良くする

More than 5 years have passed since last update.

#pragma mark とは、ソースコード上に記載することで、
Xcode 上の Function Menu? (Function List?) に見出しを付けることができます。

小さいクラスにはあまり効果を発揮しませんが、
メソッドがたくさん増えた大きなクラスには効果があります。

こんな感じです。

Before
20150513183318.png

After
20150513183224.png

今回利用したソースコードは、
ViewControllerにTableViewとButtonを貼りつけただけの単純なものです。

TableViewを利用するときは、
dataSourceやdelegateプロトコルを使うので、
#pragma mark を付けやすそうだったのでサンプルに採用しました。

使い方

「区切り線あり」と「区切り線なし」の2種類があります。

区切り線あり
#pragma mark - 区切り線あり
区切り線なし
#pragma mark 区切り線なし

表示のされ方は以下の通りです。
区切り線ありの場合は自分の頭に区切り線が入ります。
20150513190411.png

その他

// MARK: message
// TODO: message
// FIXME: message
// !!!: message
// ???: message

上記を入れることで同じようにFunction Menuに表示することができます。
上記以外はただのコメントとして扱われるようです。
ついでに「//MARK: - message」では、区切り線は付きませんでした。

20150513192838.png

Swiftでは...

#pragma mark は使えません。
代わりに

// MARK: mark
// MARK: - mark

が使うことができました。
補足として、Swiftでは「// MARK: - mark」で区切り線が付くようです。

その他、
// TODO: message
// FIXME: message
もFunction Menuに表示されます。

!!!と???は対応していないようです。

最後に

Swiftで #pragma mark - を使う も参考にさせて頂きました。

mashandroom
会社外活動・コミュニティとして、ハッカソンや各種イベントのボランティアなどに参加。ただただ自分たちが楽しみ、結果周りの人が喜んでくれるようなアウトプットを目指しています。創造せよ!頭にキノコが生えるまで
https://mashandroom.org
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした