我聽說有些人反對使用internal
改性劑隱藏在它們被聲明,因爲它違背了OOP的主要原則組件外部類和成員。這是真的嗎?「內部」修飾符和OOP原則
0
A
回答
3
這是真的嗎?
不,這是不正確的。內部可見性修飾符有其用法。有些課程你不想在其包含的程序集之外使用,但仍然需要在程序集中公開。例如,如果你正在設計一個API,那麼你可能會有一些你不想公開給你的API消費者的類。
+0
但內部方法...我們使用它們,因爲我們不能再使用「測試引用」。 – riezebosch
0
那麼人們可以自由發表意見。我不確定「內部」如何擊敗OOP的主要原則。也許一個鏈接會幫助我評估他們的立場。
我使用internal來隱藏我不希望組件外部任何人使用的類型。這是在我看來親OOP
- 暴露的行爲,但隱藏實現。
- 使用最嚴格的訪問可能
例如我重構了2種公共類型中的一些通用代碼;這個新類型從內部開始。除非某些客戶端/測試驅動我增加可視性。此外,我有時會將它作爲臨時作弊來避免爲某些類型編寫測試(所有公共類型都應該有測試)。它爲我服務的很好。
0
內部關鍵字允許如果是用來由另一個組件開發者隱藏組件的成員。例如,在.NET框架中,有許多內部類型,這意味着它們僅用於內部程序集使用,並且不在庫外部可見。這是封裝在裝配層面上的。
相關問題
- 1. 訪問修飾符C# - 內部修飾符
- 2. Doxygen與C#內部訪問修飾符
- 3. C#內部訪問修飾符
- 4. .Net程序集和內部訪問修飾符的使用
- 5. 支持Mongoid ::原子::修飾符定義?
- 6. Swing和最終修飾符
- 7. 米正則表達式修飾符
- 8. 的Javascript正則表達式修飾符
- 9. C中的OOP原則#
- 10. AS3 OOP原則 - 有多遠
- 11. __strong修飾符
- 12. __printflike__修飾符
- 13. 爲什麼oop語言沒有「只讀」訪問修飾符?
- 14. c#訪問修飾符部分像C++
- 15. 關於修飾符的內存問題
- 16. 內部類訪問修飾符不起作用?
- 17. C#「內部」訪問修飾符做單元測試時
- 18. 關於C#中的內部訪問修飾符
- 19. 基於「內部」塊修飾符的樣式元素
- 20. 訪問修飾符如何在JVM內部工作?
- 21. RegisterHotkey Fn修飾符?
- 22. 只讀修飾符
- 23. InputEvent修飾符鍵
- 24. 範圍修飾符
- 25. Vue.js修飾符鏈
- 26. 類和訪問修飾符在.NET
- 27. 公共和私人訪問修飾符
- 28. 如果/除非修飾符與和/或
- 29. @input和@output修飾符更改事件
- 30. Moose和Roles方法修飾符
問他們他們是否曾經使用* sealed *關鍵字。熟練設計師的真實標誌。 –