Java有一個「bean」的概念,它是一個帶有無參數構造函數和getter/setter方法的類。這個模式是否有更通用的名稱,如果我們正在與從未使用Java的程序員交談,我們可以避免使用術語「bean」?在其他語言中使用什麼bean模式名稱
回答
在C中,一個struct
。在VB中,structure
。
雖然bean比結構稍微多一點 - 它是一個帶有訪問器方法的結構。 – Dan 2009-12-14 19:17:26
+1,一個bean就是一個結構。訪問方法特定於Java,在支持屬性(Python,C#,Scala等)的語言中不需要。 – gooli 2009-12-18 08:00:27
儘管bean構造通常用作結構的替代品,但它實際上是一個反模式:與所有的OO類一樣,大多數bean應該封裝行爲,而不是一個愚蠢的數據容器。檢查下面的可重用軟件組件以獲得更好的答案。考慮一個Bean是Windows COM組件的Java等價物。 – hyperman 2012-10-24 13:50:04
如果你看一下JavaBean definition,更「通用」的名稱可能是可重用的軟件組件(見本tutorial from 1996!),因爲它提供了一個定義良好的服務集(系列化,存取,無參構造函數)
的但當然,所有的部件不一定是JavaBean的。
它們也可以被看作是「物業經理」,因爲它們允許屬性之間的性能的發現和訪問(通過PropertyDescriptor
,以及managing constraints。
這最後一個方面允許像Scala這樣基於JVM的語言來適應自己的特性與JavaBean約定關係密切,與scala.reflect.BeanProperty
directive。
Altough豆建設經常被用來作爲一個結構的替代品,這是一個真正的反模式:像所有的OO類,豆類最應該封裝的行爲,不是一個愚蠢的數據容器。最初,Bean被定位爲Windows COM組件的Java等價物,它的屬性可以被包含框架發現。
- 1. Django模板語言:在其他語言中使用for循環
- 2. 其他語言的AD屬性名稱
- 3. Pylatex使用其他語言
- 4. 市名,縣名在其他語言中不返回英語
- 5. 谷歌和其他人使用什麼語言
- 6. 在其他語言中最接近Apache Hadoop的是什麼?
- 7. MVC模式:使用什麼其他模式?
- 8. 在Ruby編程語言中,$的名稱是什麼:
- 9. 將國家/地區名稱翻譯爲其他語言
- 10. 爲什麼在C語言頭文件中使用'#'符號?爲什麼不使用其他符號?
- 11. 在Windows 7下的虛擬XP模式下的其他語言
- 12. 使用其他語言與紅寶石
- 13. 使用Rails或其他語言
- 14. 描述語言語法的這種語言的名稱是什麼?
- 15. 爲什麼在ssrs中使用sql語言代替mdx語言?
- 16. ,有什麼方法的等同物在其他語言
- 17. 什麼語言使用「fi」
- 18. XNA使用什麼語言?
- 19. 什麼是模板語言?
- 20. 爲什麼if語句在python中像其他語言一樣空?
- 21. 什麼語言用於動態文本(名稱)文本
- 22. Sitecore - 重命名時使用其他語言創建的版本
- 23. 在其他語言中recaptcha詞
- 24. 在html/php中使用{{&var}}的模板語言是什麼?
- 25. 使用I18n語言環境的Rails語言名稱
- 26. Windows批處理文件中使用的語言的名稱是什麼?
- 27. 爲什麼他們在JavaScript中使用名稱空間?
- 28. 還有其他什麼像WCF,其他平臺,操作系統,語言?
- 29. 模式的名稱是什麼?
- 30. 什麼是該模式的名稱?
你的意思是寶拉豆? – bniwredyc 2009-12-14 19:16:37