LoginSignup
2
3

More than 3 years have passed since last update.

[Swift]アクセスレベル

Last updated at Posted at 2020-01-24

今回はアクセスレベルについて書いていきたいと思います📝
よく変数や関数の前にPrivateといったのを見たことはありませんか?それの事です😎

対象はSwift5です。
公式ドキュメントはこちら

アクセスレベルとは

簡単に言うと宣言した変数やメソッドなどを何処でも使えるようにするか、又は制限した範囲でのみ使用可能にするか設定することです。

全部で5つあり、それぞれ特徴があります。

アクセスレベル 説明
Private 宣言したコードブロック内でのみアクセス可能(これの中→{})
FilePrivate 宣言されたファイル内でのみアクセス可能
Internal アプリのモジュール内でアクセス可能(デフォルトはこれで、設定しなかったら自動でInternalになる)
Public 他のモジュールへのアクセスが可能になるが、継承やオーバーライドは不可
Open 継承もオーバーライドも可能になる、つまり何でもできる

なぜアクセスレベルを使うのか

アクセスレベルを設定しないとデフォルトでInternalになるので、モジュール内でアクセス可能になってしまいます。
モジュール内で使うことを想定しているのなら問題ないのですが、特定の処理に使うことを想定した変数やメソッドを関係無いところで使われるのは問題です😱
それを防ぐためにアクセスレベルを設定し、意図しない利用を防ぎます!🙅‍♂️

このアクセスレベルはいつでも変更が可能なので、初期段階で利用範囲が決まっていないのなら、基本的にPrivateで設定して置くのが無難です。
利用範囲が大きくなったタイミングで段階的にアクセスレベルを広げていきましょう!🙆‍♂️

2
3
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
2
3