型を定義するためだけにインターフェースを使いなさい
インターフェースのクラスへの実装はクライアントがそのクラスのインスタンスによって出来ることをについて表現すべきである。
constant intercafe
メソッドがなくて定数の定義だけしてるインターフェース
namespaceを汚すというのはどういうことだろう
とにかく↑みたいのはやめなさい、と
・namesaceを汚すから(わかんね)
・何出来るのか表現してないので使い方がへん(へんな使い方は混乱をまねく)
代わりの案
強く関連するクラスやインターフェースがあるならそっちに定数を定義しろ
enumがいけてる感じならenumにしろ
インスタンス化できないユーティリティクラスでもいいぞ
いちいちクラス名書くのだるかったらstatic importしようね
まとめ
namespaceを汚す、がわからん
定数を定義するのにインターフェースを作りたくなる気持ちはあったが、「強く関連するクラスやインターフェースがあるならそっちに定数を定義しろ」もしくは「enumをつかえ」は正しいと思う
ユーティリティクラスは便利なんだけどなんか気色悪いんだよな
なんだよユーティリティクラスってってなってしまう
StringUtilを作るんじゃなくてStringにメソッドを追加したらいいんじゃないかという気持ちになるというか
追加できないんだけど
かといって継承して拡張するのはたぶん混乱をまねく
SuperStringBuilderみたいの作ってもだいたい混在してわけわからんくなる(最終的に存在を忘れられて誰も使わなくなったあげく、誰だよこれ作ったの・・・ってなる)