我目前正在處理一個處理文本文件中的XML的項目。我想提取內容,我想將它添加到表tt_content。我的問題是我應該在哪裏放置所有函數(upload-file,extract-content,insert-tt_content)?我應該將所有函數寫入實用程序類還是服務類?
0
A
回答
6
實用程序是針對不依賴於狀態的靜態功能。好例子是PathUtility
和StringUtility
。一旦你調用了一個函數,它就完成了工作,沒有更多。
另一方面,服務可以處理狀態,通常更復雜。你可能有某種DownloadService
,它是用一個URL初始化的,然後獲取它並最終進行某種後期處理。一個核心的例子是MarkerBasedTemplateService
。
作爲一個經驗法則,一個實用程序不具有依賴性,也不會調用其他(非靜態)方法。服務更復雜,可能會調用其他服務。服務可能有內部狀態。
同時一定要檢查有關架構的指導方針的核心文件:https://docs.typo3.org/typo3cms/CodingGuidelinesReference/latest/PhpArchitecture/ModelingCrossCuttingConcerns/StaticMethods/Index.html
0
你可以將你的函數寫入一個UtilityClass或者一個ServiceClass或者(我認爲更好的方法)你同時使用。按任務分組您的功能,例如StringUtility,FileUtility等您的ServiceClass使用比所需的UtilityFunction。
所以你有一點功能,你可以反覆使用它。例如,看看其他很棒的擴展,如tx_news,femanager等。
相關問題
- 1. 我的程序應該是應用程序還是服務?
- 2. Url Rewrite:www應該重新寫入應用程序還是Web服務器?
- 3. 我是否應該將所有ASP.NET Web服務重寫爲WCF?
- 4. 我應該將服務屬性應用於接口,具體類還是兩者?
- 5. 我應該擴展服務類還是隻使用它的一個實例?
- 6. 我應該將該方法從服務移至其自己的類,還是不?
- 7. 我還應該使用TCPClient來寫服務器還是有更好的出現?
- 8. Azure函數 - 應該將函數寫入靜態類
- 9. 客戶端應用程序應該使用實型模型類還是DTO對象與WCF服務通信?
- 10. 我應該使用一類函數還是函數的名稱空間?
- 11. 實體的更新應該由實體本身還是服務類來處理?
- 12. 實用程序類別..好還是壞?
- 13. 我應該創建類還是創建?
- 14. 類名應該反映類本身還是類的實例?
- 15. 我應該使用OData服務器還是自定義XSJS服務實施?
- 16. 我應該使用類庫項目還是新的Web應用程序?
- 17. 我應該使用抽象類還是使用類?
- 18. 我應該借用還是複製我的小數據類型?
- 19. 我應該在類之間傳遞GUI輸入變量還是重構程序?
- 20. 我應該在我的代碼後面使用此函數還是BusinessLogic類
- 21. 我們應該在線程類中寫入原始線程函數
- 22. IIS是Web服務器還是應用程序服務器?
- 23. PHP類:我應該使用2個類還是1個?
- 24. 應該將私有內部類的構造函數聲明爲public還是private?
- 25. 我應該使用構造函數注入還是IoC.Resolve?
- 26. 我應該在控制器中使用實體框架類還是模型類?
- 27. 將函數應用於類的所有實例
- 28. 實體成員應該是原始數據類型還是java數據類型?
- 29. Grails服務應該首字母大寫還是小寫?
- 30. 我應該在服務還是應用程序中保留Android藍牙服務器線程?
只是一句話:是在關於在TYPO3宇宙PHP架構的編碼指引了新的篇章:https://docs.typo3.org /typo3cms/CodingGuidelinesReference/latest/PhpArchitecture/Index.html 這是一個很好的閱讀,每個TYPO3開發者都應該知道它:) –