簡體   English   中英

具有多種實現方式的最佳類命名約定

[英]Best class naming conventions with multiple implementations

我正在處理一個項目,在這個項目中我必須以幾種方式(所有方式都在python中)實現一個相當復雜的數據結構P。 希望它會有所幫助,這就是我構造項目一部分的方式:

+ P/
|----+ A/
|    |----p.py
|
|----+ B/
|    |----p.py
|
|----factory.py
|----abstractP.py

p.py我將P實現為類的不同實現。 它們的名稱都與P相同(它們都遵循接口,因為它們繼承自擴展ABCMeta abstractP類)。

我計划使用工廠模式通過指定參數來正確實例化P類的對象。 目前,在factory.py我通過使用python導入技巧來避免名稱沖突:

from P.A.p import P as P_A
from P.B.p import P as P_B

我這樣做是為了可以在下一個項目中單獨使用p.py文件,因此我從一開始就沒有命名類P_AP_B

這是不好的做法嗎? 在這種情況下,實現的最佳命名約定是什么?

您可能應該根據其實現的某些特定方面來命名它們。

以列表類型容器的幾個典型實現為例:

  • 抽象類List(定義“列表”的基本接口/行為)
  • 類LinkedList(該行為的鏈接節點實現)
  • 類ArrayList(該行為的基於數組的實現)

您可以根據具體的實現方式來命名它們。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM