25
14

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

static なメソッドにする理由の一つ:インスタンス変数に依存していないことを明示する

Posted at

レビューでこのようなコメントをもらいました。

「インスタンス変数に依存していないことを明示するために、staticメソッドにするのが良さそうに思います。」

コメントをもらうまでは、メソッドに static をつけるのは「インスタンスを生成せずに呼び出すメソッドの時」という理解でした。これは「インスタンスを生成せずに呼び出すメソッド」であれば「インスタンス変数に依存していないメソッド」と言えるということにコメントをもらって気づくことができました。

初学者の頃は「インスタンス変数に依存していないメソッド」と分かることは一体何が嬉しいの?状態でしたが、今ならその有難みが分かります。
が、うまく言語化できていません(笑)。インスタンスの状態と切り離して考えられる点が嬉しいんだと思っています。脳のメモリが節約できたり、不具合調査のときに役立つイメージですね。

修飾子や型から得られる情報は沢山あります。読み手(未来の自分を含む)に誤解を与えないような修飾子や型をつけられるように頑張っていきたいです。

参考記事

25
14
4

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
14

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?