Dot-Net

介面不應該有屬性嗎?

  • June 9, 2009

我的辦公室同事今天告訴我,在介面中使用屬性是不好的做法。他在一些我找不到的 MSDN 文章中指出了這一點(好吧,我在 google 上嘗試了幾次,可能使用了錯誤的關鍵詞)。他還告訴我只有方法應該在介面中。現在,我知道這不是嚴格的規則,因為顯然在 .net 中您可以在介面中進行屬性簽名並編譯它。

但這真的是一種不好的做法/設計/oop嗎?為什麼?

指出正確的文獻或網路資源也會有所幫助。

謝謝

我也會在這裡添加我的聲音——我從來沒有遇到過這個建議。屬性實際上是一對 get/set 方法。

像其他所有設計決策一樣。如果它真的有道理;如果它適用於正在設計的系統,如果它不會導致維護問題,如果它不會導致性能問題,那麼你應該沒有理由不能這樣做。

我從來沒有遇到過任何人提出這種說法,我也看不出有什麼好的理由。.NET 框架充滿了帶有屬性的介面。

引用自:https://stackoverflow.com/questions/972392