我一直在使用PHP進行很多工作。 但是最近我被派上了一個使用Java的工作。在PHP中,我曾經做過很多Singleton對象,但是這種模式在Java中並不具有與PHP相同的含義。 所以我想去一個實用程序類(一個靜態方法的類),但我的負責人不喜歡這種類,並要求我去服務對象。 所以我的猜測是一個服務對象只是一個具有構造函數的類來實現一些公共方法... 我是對的嗎?服務對象的定義是什麼?
21
A
回答
19
Domain-Driven Design限定服務爲:
服務是作爲單獨矗立在模型的接口提供了一個操作,而不包封狀態... [P。 105]
是的,它是一個具有公共方法的類,但除此之外,它還實現了公開這些方法的接口。在其核心,服務是接口 - 實現它的類只是一個實現細節。
2
我發現服務對象的另一個定義,而不是描述爲具體類的接口,這些具體類即將通過該接口設置的API定義提供某種服務。
文章關於微服務>Link定義爲服務對象:
3:許多面向對象的設計,包括我們自己,使用術語服務對象的領域驅動設計感的對象的指令進行一個與實體無關的重要過程。這與我們在本文中使用「服務」的方式不同。可悲的是,術語服務具有雙重含義,我們必須與多義詞共存。
我在這裏理解的不是技術方面,比如將其定義爲「界面」,而是更多地描述了它的設計概念。我也理解一個service object
只是一個類的責任域。因此,如果您正在開發Web應用程序,則可能有一個服務對象SecurityService
,它是SecurityController
的組件。控制器正在調用服務以實際處理安全(域)特定的服務。
相關問題
- 1. 服務對服務應用程序的含義是什麼?
- 2. 什麼是自定義Web對象
- 3. 爲什麼定義對象
- 4. 定義的Web服務全局對象
- 5. Silverlight/RIA服務/ EF - 自定義對象
- 6. 使用自定義Web服務對象
- 7. 對於一個對象數組,typecript定義是什麼樣的?
- 8. 文件對象的含義是什麼?
- 9. 什麼是對Sitecore的web服務
- 10. 什麼是抽象的真正定義?
- 11. 返回的對象在自定義ajax服務中未定義
- 12. 定義JAX-WS Web服務的服務端點接口的原因是什麼?
- 13. 在類的endclass定義中,類的對象是什麼意思?
- 14. TypeScript中定義的對象文字鍵的類型是什麼?
- 15. 爲什麼對象未定義?
- 16. 爲什麼[對象Casper] .test未定義?
- 17. 有什麼開銷#定義對象?
- 18. 爲什麼jQuery對象未定義?
- 19. 爲什麼沒有定義$ .connection對象?
- 20. 爲什麼對象響應未定義?
- 21. 爲什麼沒有定義對象?
- 22. 什麼是絕對URL的定義
- 23. 什麼是Hibernate業務對象? DTO?
- 24. 在PHP什麼是對Web服務器
- 25. Web服務方法返回響應對象,而不是自定義對象
- 26. 是什麼好做(傳入對象變成服務或用戶名到服務?)
- 27. 什麼是更高效的數據表或自定義對象?
- 28. 在JSON中定義空對象的標準是什麼
- 29. 爲什麼$ .each會說這個JSON對象是未定義的?
- 30. 爲什麼自定義對象不是HashMap的等價鍵?
因此,如果我得到它的權利,對於我轉變爲服務的每個工具類,我應該創建一個接口? – MaxouMask 2010-05-28 11:38:40
是的,但是在OO中,Utility類的整個概念是一種代碼異味。真正的OO班有明確的職責...... – 2010-05-28 12:02:53
好的非常感謝:) – MaxouMask 2010-05-28 12:05:22