আমাদের তৃতীয় পক্ষের সেবার উপর নির্ভরতা রয়েছে যা একটি বিশাল ইন্টারফেস প্রকাশ করে যার মধ্যে আমাদের কেবল 3 টি পদ্ধতির মতো দরকার। অতিরিক্তভাবে, ইন্টারফেসটি ঘন ঘন পরিবর্তিত হয় ...
আমি আমাদের প্রকল্পের একটি শ্রেণিতে ইন্টারফেসটি মোড়ানোর সিদ্ধান্ত নিয়েছি এবং কেবল আমাদের প্রয়োজনীয় পদ্ধতিগুলি প্রকাশ করব।
তবে আমি নিশ্চিত নই যে আমার কীভাবে রিটার্ন মানগুলি হ্যান্ডেল করা উচিত ... ইন্টারফেসটি টাইপের একটি বস্তু প্রদান করে Storage
। আমাদের অভ্যন্তরীণভাবে একটি প্রকার রয়েছে StorageModel
যা এ এর অভ্যন্তরীণ উপস্থাপনা Storage
।
আপনি ম্যাপারে কী ফিরবেন: Storage
বা StorageModel
? আমাদের একটি ডেটা সার্ভিস রয়েছে StorageService
যা ইনজেকশনের মোড়কের উপর নির্ভরতা পায়।
বর্তমানে আমি এটি মূলত এটি করছি:
public class StorageService
{
private readonly IExternalStorageWrapper externalStorageWrapper;
public StorageService(IExternalStorageWrapper externalStorageWrapper)
{
this.externalStorageWrapper = externalStorageWrapper;
}
public StorageModel GetStorage(int storageId)
{
return this.externalStorageWrapper.GetStorage(storageId).ConvertToStorageModel();
}
}
public class ExternalStorageWrapper : IExternalStorageWrapper
{
public Storage GetStorage(int storageId)
{
using(var ext = new ExternalStorage())
{
return ext.GetStorage(storageId);
}
}
}
তুমি কি বলবে:
- এটি কি উপরের মতো ভাল, যে মোড়কটি বাহ্যিক
Storage
বস্তুটি দেয় এবং অভ্যন্তরীণ অভ্যন্তরীণStorageService
ফেরত দেয়StorageModel
? - অথবা আপনি কি
StorageModel
ইতিমধ্যে একটি মোড়ক ফেরত দেবেন ?