Kendi uygulamalarıyla devam etmeden önce hepsinin aynı işlevleri yerine getirmesi gereken çeşitli bireysel yöntemlerim var. Şimdi her bir yöntemde bu işlevleri uygulayabilirim ama bunu yapmak için attributes
'u kullanmanın bir yolu olup olmadığını merak ediyordum? Çok basit bir örnek olarak, tüm ağ aramaları bir ağ bağlantısını kontrol etmek zorunda.Arama Yöntemlerine Öznitelikleri Kullanma
public void GetPage(string url)
{
if(IsNetworkConnected())
...
else
...
}
Bu çalışacak, ama ağını kullanan her yöntem için IsNetworkConnected
yöntemini çağırın ve ayrı ayrı ele gerekirdi. ağ, bir hata yöntemi yerine denir ve GetPage
göz ardı edilir, aksi GetPage
çağrılır müsait değilse Bunun yerine, bu
[NetworkCall]
public void GetPage(string url)
{
...
}
yapmak istiyorum.
Bu, Aspect Orientated Programming'e çok benziyor, ancak birkaç çağrı için tüm çerçeveyi uygulamak istemiyorum. Bu, bir uygulamadan ziyade bir öğrenme alıştırmasıdır, bu yüzden böyle bir şeyin nasıl en iyi şekilde uygulanacağını merak ettim.
Mirastan ne haber?Hepsinin bir "Network" sınıfı veya onun gibi bir şeyden türetilmiş olmasını sağlayın. – gdoron