名前空間の代わりに静的クラスを使用することについて、人々の意見を評価したいと思っています。私は C++ のバックグラウンドを持っており、その構文とコードを構造化する方法が非常に気に入っています。最近、ファイルだけでなく、コードを論理ユニットにグループ化する必要があると判断しました。たとえば、私は User::login よりも user_login のような呼び出しを好みます。そこで、少しグーグルで調べてみたところ、PHP に名前空間があることがわかって安心しました。私の安堵は長続きしませんでしたが、私は構文が本当に好きではありません。それは私の関数呼び出しにさらに混乱を加えます。そのため、現時点では静的クラスを使用して名前空間をシミュレートしています。これには欠点がありますか?
PHP Namespaces vs Classes with static functionsで同様の質問を見つけましたが、それほど多くの議論はありませんでした。
また、次の状況を回避する方法はありますか。
class Test {
public static void myFunc() {
Test::myOtherFunc();
}
public static void myOtherFunc() {
}
}
名前を指定せずに同じクラスの関数を呼び出しても問題ないと思いましたが、どうやらそうではないようです。そのための回避策はありますか (たとえば、C++ では using キーワードがあります)。