ProgramlamaVB.NET geliştirici

Visual Basic'de bir arayüz nasıl uygulanır ve kullanılır, birden fazla arayüz uygulamanın ayırt edici özellikleri nelerdir ve bunların kullanımında hangi nüanslar vardır?

Hintsage yapay zeka asistanı ile mülakatları geçin

Cevap.

Visual Basic'de bir arayüz Interface anahtar kelimesi ile tanımlanır. Arayüz, onu uygulayan sınıflarda gerçekleştirilmesi gereken yöntemler kümesini tanımlar.

Özellikler:

  • Arayüz, yalnızca yöntemlerin, özelliklerin, olayların bildirimlerini içerir — gerçek uygulama yoktur.
  • Bir sınıf birden fazla arayüzü uygulayabilir (çoklu uygulama).
  • Farklı arayüzlerden aynı isimli yöntemleri ayırt etmek için açık uygulama kullanılır.

Kod örneği:

Interface ILogger Sub Log(message As String) End Interface Interface IErrorNotifier Sub NotifyError(errorMsg As String) End Interface Public Class FileLogger Implements ILogger, IErrorNotifier Public Sub Log(message As String) Implements ILogger.Log ' Kayıt gerçekleştirme End Sub Public Sub NotifyError(errorMsg As String) Implements IErrorNotifier.NotifyError ' Hata bildirme gerçekleştirme End Sub End Class

Kandırma sorusu.

Aynı isimli, ancak farklı imzalı yöntemleri olan iki arayüzü uygulamak mümkün mü? Böyle bir sınıf derlenecek mi?

Cevap: Evet, böyle iki arayüzü uygulamak mümkündür. İmzaların farklı olması durumunda, derleyici her yöntemin açık bir şekilde uygulanmasını gerektirir, aksi takdirde belirsizlik ortaya çıkar. Uygulama sırasında arayüzün tam adını kullanın:

Public Class Example Implements IFirst, ISecond Public Sub DoWork() Implements IFirst.DoWork ' IFirst için uygulama End Sub Public Sub DoWork(value As Integer) Implements ISecond.DoWork ' ISecond için uygulama End Sub End Class

Konu hakkında bilgi eksikliğinden kaynaklanan gerçek hata örnekleri.


Hikaye

Arayüzün eksik uygulanması nedeniyle işlev kaybı: Geliştirici, ilan edilen arayüzün tüm öğelerini uygulamamıştı, hata, tam olarak uygulanmış bir sözleşme bekleyen bir koleksiyona sınıf eklenince dolaylı olarak ortaya çıktı ve çalışma zamanı hatalarına yol açtı.


Hikaye

Birden fazla arayüzü uygularken yöntem çatışması: Projede aynı yöntemlere sahip arayüzleri uygulamak gerekiyordu. Açık uygulama eksikliği nedeniyle yöntemler "birbirinin üzerini kapladı" ve alıcılar yalnızca bir versiyonu alarak yanlış bir mantık davranışı elde edildi.


Hikaye

Sorumlulukları ayırma ilkesinin ihlali: Büyük bir projede çok fazla arayüz bir sınıf tarafından uygulanıyordu çünkü kodun kopyalanması söz konusuydu. Sonuç olarak, sözleşmelerin uygulanmasını izlemek ve arayüzler arasında uyumluluğu sağlamak zorlaşmıştı.