آبجی
14th February 2010, 01:20 AM
در ویژوال استادیو ۲۰۱۰ که نسخه ی CTP اون در حال حاضر در دسترس هست، VB.NET چند قابلیت جدید رو به همراه داره.
یکی از این قابلیت ها، Automatic Properties یا خواص خودکار هست. این قابلیت پیشتر در #C وجود داشته و VB.NET در نسخه ی ۱۰ خودش با اون همراه شده.
Automatic Properties برای کوتاه کردن بدنه ی تعریف Property استفاده میشه.
به عنوان یک مثال رایج برای ایجاد Property در VB.NET:
Private _FirstName As String
Property FirstName() As String
Get
Return _FirstName
End Get
Set(ByVal value As String)
_FirstName = value
End Set
End Property
تعریف Property فوق با استفاده از Automatic Properties به شکل ذیل خواهد بود:
Property FirstName() As String
در هنگام کامپایل، کامپایلر یک فیلد مخفی برای Property ایجاد می کنه. چیزی مانند تعریف کلاسیک قبل.
استفاده از Automatic Properties در هنگامی مناسب است که نیاز به بررسی مقدار انتساب داده شده به Property (مثلاً با یک دستور If) ندارید.
همچنین می توان برای Property هایی که به صورت Automatic تعریف میشن، مقدار پیش فرضی رو در نظر گرفت. مثال هایی از مایکروسافت:
Property ID() As Integer = -1
Property SupplierList() As New List(Of Supplier)
Property OrderList() As New List(Of Order) With {.Capacity = 100}
<DefaultValue(”-”)>
Property Name() As String Implements ICustomer.Name
Automatic Properties نمی توانند دارای پارامتر ورودی باشند یا با کلمه ی کلیدی ReadOnly یا WriteOnly ذکر شوند.
یکی از این قابلیت ها، Automatic Properties یا خواص خودکار هست. این قابلیت پیشتر در #C وجود داشته و VB.NET در نسخه ی ۱۰ خودش با اون همراه شده.
Automatic Properties برای کوتاه کردن بدنه ی تعریف Property استفاده میشه.
به عنوان یک مثال رایج برای ایجاد Property در VB.NET:
Private _FirstName As String
Property FirstName() As String
Get
Return _FirstName
End Get
Set(ByVal value As String)
_FirstName = value
End Set
End Property
تعریف Property فوق با استفاده از Automatic Properties به شکل ذیل خواهد بود:
Property FirstName() As String
در هنگام کامپایل، کامپایلر یک فیلد مخفی برای Property ایجاد می کنه. چیزی مانند تعریف کلاسیک قبل.
استفاده از Automatic Properties در هنگامی مناسب است که نیاز به بررسی مقدار انتساب داده شده به Property (مثلاً با یک دستور If) ندارید.
همچنین می توان برای Property هایی که به صورت Automatic تعریف میشن، مقدار پیش فرضی رو در نظر گرفت. مثال هایی از مایکروسافت:
Property ID() As Integer = -1
Property SupplierList() As New List(Of Supplier)
Property OrderList() As New List(Of Order) With {.Capacity = 100}
<DefaultValue(”-”)>
Property Name() As String Implements ICustomer.Name
Automatic Properties نمی توانند دارای پارامتر ورودی باشند یا با کلمه ی کلیدی ReadOnly یا WriteOnly ذکر شوند.