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. 在其他語言中使用javascript設計模式
- 4. 什麼是時間格式PT00H00M00S的名稱和什麼語言使用它?
- 5. Pylatex使用其他語言
- 6. 市名,縣名在其他語言中不返回英語
- 7. 谷歌和其他人使用什麼語言
- 8. 在其他語言中最接近Apache Hadoop的是什麼?
- 9. MVC模式:使用什麼其他模式?
- 10. 什麼是可可視覺格式語言的視圖名稱?
- 11. 在Ruby編程語言中,$的名稱是什麼:
- 12. 將國家/地區名稱翻譯爲其他語言
- 13. atoi()其他語言
- 14. 數據庫,其他語言的列名
- 15. 爲什麼在C語言頭文件中使用'#'符號?爲什麼不使用其他符號?
- 16. 在Windows 7下的虛擬XP模式下的其他語言
- 17. 爲什麼在ssrs中使用sql語言代替mdx語言?
- 18. 描述語言語法的這種語言的名稱是什麼?
- 19. 使用其他語言與紅寶石
- 20. 使用Rails或其他語言
- 21. Java語言:名稱
- 22. ,有什麼方法的等同物在其他語言
- 23. 什麼其他編程語言在PNaCl上運行?
- 24. XNA使用什麼語言?
- 25. 使用什麼語言?
- 26. 什麼是模板語言?
- 27. 爲什麼if語句在python中像其他語言一樣空?
- 28. 什麼語言用於動態文本(名稱)文本
- 29. 在html/php中使用{{&var}}的模板語言是什麼?
- 30. Sitecore - 重命名時使用其他語言創建的版本
你的意思是寶拉豆? – bniwredyc 2009-12-14 19:16:37