有一個關於Delphi和Datasnap的信息,我仍然無法找到或弄清楚......想象一下,我想把我所有的智能功能放在服務器層。在這種情況下,我將使用面向對象的概念,創建大量的類,每個類都有自己的方法和屬性。因爲在每一個例子中,我看到一個客戶端只搜索關於一個服務器類的信息,我想知道:無論如何,是否可以使用多個類,還是僅限於一個包含一堆不同方法的類?
你們能理解嗎?
感謝您的幫助,
聖保羅
有一個關於Delphi和Datasnap的信息,我仍然無法找到或弄清楚......想象一下,我想把我所有的智能功能放在服務器層。在這種情況下,我將使用面向對象的概念,創建大量的類,每個類都有自己的方法和屬性。因爲在每一個例子中,我看到一個客戶端只搜索關於一個服務器類的信息,我想知道:無論如何,是否可以使用多個類,還是僅限於一個包含一堆不同方法的類?
你們能理解嗎?
感謝您的幫助,
聖保羅
這種情況下一個有用的設計模式 - 多業務類,其中有超過一通信層的「外部」的客戶端應用程序進行通信 - 是Facade 。
正面是一個對象,它爲更大的代碼體提供了簡化的接口,如類庫。
對於客戶端來說,facade會公開調用業務類的實例。
這也有一個好處,即您的業務模型類可以在API保持穩定時發展。
另外你應該考慮Data Transfer Objects,這是一種設計模式,它避免暴露內部對象類和數據結構以實現更好的封裝。
DataSnap服務器將多個類公開給客戶端沒有任何問題。只要看看樣品。即使是「基本」示例服務器也暴露三個服務器類。