2016-05-19 7 views
2

システムには、ユーザーとシステム自体の設定があります。通常、コントローラーやその他のオブジェクトには、SystemSettingsControllerUserSettingsControllerのような名前が付けられます。私はコントローラを自分のフォルダに分けているので、異なる名前空間を持っています。異なるネームスペースのオブジェクトの名前付け

オブジェクトの名前空間にオブジェクトの名前空間が含まれていると考えている人は誰ですか?私は代わりにusers\SettingsControllersystem\SettingsControllerのようなことを考えています。だから、彼らは同じ名前を持っていますが、その違いは名前空間によって区別することができます。

+0

互いからクラスを分離するために、あなたのIDEでloostことができますが、フォルダや時間によってで仕事をしたいどのくらいのファイル味のこのより問題は、オートコンプリート(あなたが同じクラスの10のクラスを持っているなら退屈です)。私の場合、私はfunctionnalフォルダを設定することを好みますが、あなたのケースでは、私はコントローラ/ UserSettingsController – doctormad

答えて

2

あなたが書くことができます。

use Carrington/User/SettingsController as UserSettingsController; 
use Carrington/System/SettingsController as SystemSettingsController; 

+0

を行ったでしょう。私が同じクラスで両方を使用するならば、それらをエイリアスにします。しかし、私が見ていることから、私が言及したのと同じことをするのは容認できるでしょう。両方とも 'SettingsController'という権利ですか? – kenshin9

+0

@ kenshin9はい、それだけで受け入れられるので、名前空間が使われています。クラスを完全な関数で命名しようとしないで、クラスを分類してください。エイリアシングすると、そのエイリアスからエイリアスすることができます。クラスには影響しません。両方のクラスが基本的にそれぞれの_category_に対して同じことを行う場合、たとえば、_utility/AbstractSettingsController_のような基本クラスを継承することによってクラスを構造化できます。または、あなたの経験則では、_utility_カテゴリに抽象クラス/インターフェイスのみが含まれている場合は、同じ方法で_utility/SettingsController_を呼び出します。 – dbf

関連する問題