मुझे एकाधिक एपीआई वाले कई सेवाओं को कॉल करना होगा। उनमें से कुछ मूल रूप से पढ़े जाते हैं (वे मुझे कुछ डेटा लौटाते हैं) और उनमें से कुछ कई वस्तुओं की स्थिति बदलते हैं (वे मूल रूप से कई वस्तुओं की स्थिति को अद्यतन करते हैं)।एकाधिक एपीआई कॉल: डिज़ाइन पैटर्न
मैं design pattern
की तलाश में हूं जो उपरोक्त परिदृश्य पर लागू किया जा सकता है।
कोड उदाहरण
चलें एक सेवा का एक छोटा सा उदाहरण लेते एक
AccountInfo A.getAccountInfo()
void A.setAccountData(AccountInfo)
AccountStatus A.getStatusForAccount
...
मैं एक जेनेरिक इंटरफ़ेस
interface CallAPI<Input , Output> {
public Output execute(Input)
}
प्रत्येक होने के बारे में सोचा एपीआई कॉल इस इंटरफेस को लागू करेगा और मैं सी एपीआई के उदाहरण प्राप्त करने के लिए फैक्टरी पैटर्न का उपयोग करें।
मैं जानना चाहता हूं कि इसके लिए एक बेहतर पैटर्न है या इसे अलग तरीके से दोबारा किया जा सकता है। एपीआई और सेवाएं केवल बढ़ेगी और नए एपीआई स्थापित करना आसान होना चाहिए और ग्राहकों को नए एपीआई के लिए एडेप्टर लिखने के लिए अतिरिक्त ओवरहेड नहीं होना चाहिए।
रेट्रोफिट पर एक नज़र डालें, यह आपके द्वारा प्राप्त करने की कोशिश करने के समान तरीके है –