ページ 11

定数の隠蔽について

Posted: 2013年10月12日(土) 20:39
by sozai
ふと気になったので質問させていただきます。
オブジェクト指向のカプセル化で変数は隠蔽したほうがいいそうですが、定数も隠蔽したほうがよいのでしょうか?
定数の隠蔽に何か特別メリットがあるようには思えないのですが...

Re: 定数の隠蔽について

Posted: 2013年10月12日(土) 20:51
by softya(ソフト屋)
オブジェクト指向の目的は、多人数での開発で可読性やメンテナンス性や再利用性を高めて生産性を上げることに有るので、そう考えれば隠したほうが良い定数と隠さないほうが良い定数があるのが自ずと分かってくると思います。

定義しておいた定数を勝手に使われて、クラスの内部コードをメンテして定数を変えたら他の人からバグったと言われたら困りますよね? [説明修正]

Re: 定数の隠蔽について

Posted: 2013年10月12日(土) 21:50
by sozai
返信ありがとうございます。
softya(ソフト屋) さんが書きました:オブジェクト指向の目的は、多人数での開発で可読性やメンテナンス性や再利用性を高めて生産性を上げることに有るので、そう考えれば隠したほうが良い定数と隠さないほうが良い定数があるのが自ずと分かってくると思います。

定義しておいた定数を勝手に使われて、クラスの内部コードをメンテして定数を変えたら他の人からバグったと言われたら困りますよね? [説明修正]
個人で開発する場合はどちらでも構わないということでしょうか。

Re: 定数の隠蔽について

Posted: 2013年10月12日(土) 21:53
by softya(ソフト屋)
作成後数年ぐらい経過したら他人も同様です。
将来の自分のためにも、ちゃんとしておいた方が身のためです。

ただ、困ってみないと実感しないと思うので最初のうちは失敗しまくったほうが私は良いと思います。

Re: 定数の隠蔽について

Posted: 2013年10月13日(日) 13:57
by sozai
ありがとうございました。
どちらの方法を使うかはよく考えてから決めようかとおもいます。