Burada ne yapacağımı anlamaya çalışıyorum. Değişiklik yapmadan önce, bazı makul veri yapılarında düzenlemem gereken iki farklı 3. parti uygulamasında müşteri verilerine sahibim. Şu anda her bir üçüncü taraf uygulaması için iki alt müşteri sınıfım var.Iki Alt Sınıflı Nesnelerin Eşleştirilmesi, vb.NET
Public MustInherit Class Customer
Public ID as String
Public Name as String
Public.... more shared members here
End Class
Public Class Application1Customer
Inherits Customer
Public Application1SpecificData....
End Class
Public Class Application2Customer
Inherits Customer
Public Application2SpeceficData.....
End Class
Müşteri1'in tüm örneklerini kendi Müşteri2'lerine eşlemeliyim. Ben bir Müşteri1 ve mantıksal bir mantığa sahip bir algoritma var.
Tasarım fikirleri aradığım yer şurası ... Müşteriler, iki uygulama arasında eşleşen tek veri değildir. Ayrıca iki Öğe sınıfı, iki Ödeme sınıfı, iki Fatura sınıfı vb. Var. Bu sınıfların her biri örneklerle eşleştirmek için kendi algoritmasına sahip ... Yeniden kullanılabilir kod miktarını en üst düzeye çıkarmak istiyorum.
Sorular:
bölümünü eşleştirmek için iyi bir tasarım deseni nedir?
Eşleşen nesne çiftini hangi veri yapısında depolarım?
Benim şu anki düşünce:
Bu alt sınıflar matchable Arayüz çeşit uygulamak. Bu arayüz görünen bir yöntemi içeren gibi:
gibiPublic Function matchToApp (Koleksiyon matchable) matchable
iki özellik, diğeri her uygulama en matchable ... sahip yeni nesne türü
Eminim ki bunu yapmanın daha yaratıcı yolları vardır. Baska öneri?
Teşekkür