2016-12-06 54 views
1

我的類共享多個領域和存取。例如 getId()setId(Long id)命名約定的接口來訪問一個字段

getTimestamp()setTimestamp(Instant time)

我想抽象這些方法在不同的接口。我要尋找一個最佳實踐來命名這些接口

我想可能的命題是:

HasIdWithIdTimestamped(但是這並不ID工作,因爲你不能Ided

是這些接口有一個標準的命名約定嗎?

+8

身份,Timestampable的目的是什麼? –

+0

如果你不能想到一個好的名字,那就表明這個設計可能會被抽象化。 –

+0

以'Serializable'爲例。但這是基於意見的......不確定他們是否有任何「好」的答案。 – AxelH

回答

1

我不認爲有任何的最佳做法在這裏,因爲它依賴於使用情況是什麼。記住一個界面是一個「契約」,所以當命名他們認爲他們是契約時。

在您的例子(ID)我見過的人使用「IsIdentified」,「鑑定」,「身份」,「WithIdentifier」 ......他們沒有錯真的,但我更喜歡使用「-able 「後綴。

現在不把它看作是「所有接口應該有-able的後綴」。無論使你的代碼更清晰,界面言自明:)