Visual Basic .Net 10 ile Lazy Sınıfı Kullanımı

Tasarım desenlerini kullananlar Lazy Initialization desenini bilirler. Bu desene göre bir nesnenin değeri o nesneye ihtiyaç duyuluncaya kadar hesaplanmaz, bir kere hesaplanmasının ardından hazırlanan değer döndürülür.

Bu kalıp uygulama içerisinde her zaman hesaplanması gerekmeyen ve muhtemelen hesaplandıktan sonra sistem kaynaklarını tüketmesi beklenen nesneler için kullanılır.

.net 4.0 ile gelmesi beklenen Lazy sınıfı ise bu deseni uygular, generic olarak belirtilen türü değer talebi olduğunda parametre olarak ,o türü döndüren bir fonksiyon alır. Sınıftan değer talebi bulunduğunda fonksiyon çalıştıralacaktır.

[vbnet]
     Sub Main()

        Dim tembel As New Lazy(Of String)(AddressOf YazıÜret)

        Console.Write("Değer üretildi mi ? :")
        Console.WriteLine(tembel.IsValueCreated)

        Console.ReadLine()

        Console.Write("Değer ne ? :")
        Console.WriteLine(tembel.Value)

        Console.Write("Değer üretildi mi ? :")
        Console.WriteLine(tembel.IsValueCreated)

        Console.ReadLine()
    End Sub

    Function YazıÜret() As String
        'işlemler..
        Return "Sonuç"
    End Function
[/vbnet]

asldas

Not: Vb10 henüz beta olduğundan değişiklik olabilir.



Etiketler :




8.89301300049E-5 | 3.5