私はPHPプログラマですが、議論したいのはJavaの影響です。
いくつかの言語のハンガリー語表記法と命名規則に関する記事を読んだ後、Java のインターフェイスの命名規則がいかに明確であるかを証明しました。1 つの質問があります。
AbstractCollectionと呼ばれる抽象クラスとListsと呼ばれる具象クラスがあるオブジェクト コレクションのケースを考えると、Listsのインターフェイスにどのように名前を付ける必要がありますか?
問題は、Java の命名規則では、 ListsInterfaceやInterfaceListsなどのインターフェイスのプレフィックスもサフィックスもないことです。
リストはインターフェイス名であり、明らかに、少なくとも PHP では、同じディレクトリ内の 2 つのファイルが同じクラスまたはインターフェイスの名前を持つことはできません。
すべてのクラスにインターフェイスが必要なわけではありませんが、プログラミング チームに移動することにした場合はどうすればよいでしょうか。他のプログラマーは私のクラスを使用する可能性がありますが、クラス ファイルを開いて、それが提供するパブリック メソッドを確認するべきではありません。
インターフェイスを読むだけで、すべてが明確になります。
ディレクトリ構造のポイントは、インターフェイスと同じ名前のサブディレクトリを追加し、その中に具体的なクラスのファイルを追加できることから生まれました。例えば:
/
/Collections
/Collections/Lists.php <-- Interface
/Colection/Lists/Lists.php <--- Concrete Class
今何?