آشنايي با ويژوال بيسيك 2005 - Developer Center
Developer Center




بازگشت   Developer Center > مباحث مربوط به محصولات جديد مايكروسافت > MicroSoft Visual Studio 2005/2008 > Visual Basic 2005
ثبت نام راهنما فهرست کاربران تقویم جستجو ارسالهاي امروز نشانه گذاري انجمن ها به عنوان خوانده شده

پاسخ
 
ابزارهای موضوع نحوه نمایش
قدیمی Saturday 16 September 2006, 04:33 PM   #1
Sloveir
شهرام درويشي - مدير انجمن
 
Sloveir آواتار ها
 
تاریخ عضویت: Tuesday 11 January 2005
نوشته ها: 281
با تشکر: 2
تشکر شده 632 بار 50 پست
Sloveir کاربر بسیار مشهورSloveir کاربر بسیار مشهورSloveir کاربر بسیار مشهورSloveir کاربر بسیار مشهورSloveir کاربر بسیار مشهورSloveir کاربر بسیار مشهورSloveir کاربر بسیار مشهورSloveir کاربر بسیار مشهورSloveir کاربر بسیار مشهور
Post آشنايي با ويژوال بيسيك 2005

در اين مقاله علاوه بر آشنايي با قابليت هاي ويژوال بيسيك دات نت 2 كه ويژوال بيسيك 2005 نيز ناميده مي شود،باويژگي هاي مهم نرم افزاري ويژوال استوديوي 2005 نيز آشنا خواهيد شد.

اين ويژگي ها كم و بيش در ساير زبان هاي دات نت 2 حضور دارند. در اين مقاله فرض بر اين است كه شما قبلا با زبان برنامه نويسي ويژوال بيسيك دات نت آشنا هستيد و اكنون مايليد بدانيد نسخه جديد چه ويژگي هايي نسبت به نسخه فبلي دارد. در اين مقاله تغيير وتحولات زبان ويژوال بيسيك دات نت در دو گروه از پيشرفت ها بررسي شده است. اين دو دسته عبارتند از : پيشرفت هاي مربوط به ويرايشگر كد(Code Editor) و IDE، قابليت هاي جديد زبان برنامه نويسي ويژوال بيسيك دو گروه از قابليت هاي جديد و مهم ديگر هم وجود دارند: يكي امكانات جديدي كه ويژوال بيسيك2005براي ساختن برنامه نصب و انتشار از طريق وب تعبيه كرده است و ديگري قابليت هاي بهبود يافته IDE براي كار باSQL Server كه اميدواريم هر يك از اين دو را مفصلا در مقالات جداگانه اي تشريح كنيم.
منبع اصلي براي نگارش اين مقاله سايت MSDN و مقالات آن بوده است؛هر چند براي بررسي دقيق تر قابليت هاي مورد بحث ،نرم افزار ويژوال بيسيك 2005 را نصب كردم تا از نزديك كارايي اين قابليت ها و امكانات را بيازماييم.

هم قوي تر ،هم آسان تر
زبان ويژوال بيسيك از قديم به آسان بودن معروف بوده است. بسياري از برنامه نويسان به اين دليل به سمت ويژوال بيسيك روي آوردند كه مايلند از امكانات يك زبان برنامه نويسي خوب استفاده كنند:بدون اينكه مجبور باشند با سطوح پيشرفته و پيچيده برنامه نويسي كه در زبان هاي ديگر وجود دارد،در گير شوند. به همين دليل نسخه 6 ويژوال بيسيك به آسان بودن معروف بود.

در حالي كه اغلب برنامه نويسان حرفه اي ،زبان C++ و جاوا را براي كارها و پروژه هاي پيشرفته ترجيح مي دادند. با ورود پلتفرم دات نت به دنياي سيستم عامل ويندوز ،در اين وضعيت تغييرات اساسي به وجود آمد. به طوري كه برنامه نئيسان پس از گذشت چند ماه از معرفي رسمي زبان هاي ويژوال بيسيك دات نت و سي شارپ متوجه شدند كه اين دو زبان از نظر قابليت هاي برنامه نويسي تقريبا برابرند و هر دو حتي از C++ هم بهتر نتيجه مي دهند.

اما برنامه نويسان ويژوال بيسيك6 خيلي زود به دشوار بودن مهاجرت از يك زبان غير شي گرا به يك زبان واقعا شي گرا مانند VB.NET پي بردند. با اين حال برنامه نويساني كه اين مرحله انتقالي را طي كردند و به اين نتيجه رسيدند كه ويژوال بيسيك دات نت باز هم زبان آسان و جذابي است هر چند برنامه نويس را مجبور مي كند خود را به سطح بالاتر و پيشرفته از برنامه نويسي،يعني دنياي برنامه نويسي شي گرا برساند.

اكنون آن دسته از برنامه نويساني كه سرانجام باVB.NET خو گرفته اند از خود مي پرسند: زبان VB.NET 2.0 واقعا چه مزيتي نسبت به نسخه قبلي دارد؟ آيا باز هم بايد طي يك روند دشوار ،به نسخه جديد مهاجرت كنيم؟ يا اين كه ويژوال بيسيك 2005 اساسا نسبت به VB.NET ارتقاي مهمي محسوب نمي شود؟
اگر اين مقاله را تا انتها دنبال كنيد،متوجه خواهيد شد كه مايكروسافت در نسخه 2005ويژوال استوديو(كه شامل ويژوال بيسيك دات نت 2 نيز هست) كوشيده است در كنار ارتقاي كيفيت عملكرد Framework 2.0 بار ديگر آن فضاي دوست داشتني و دلچسب دوران ويژوال بيسيك6 را به عرصه برنامه نويسي بازگرداند. بنابر اين آنچه كه بايد در VB.NET منتظرش باشيد،يك IDE قدرتمند تر است كه برنامه نويسي را از پيش آسان كرده است.
به ويژه بايد به مايكروسافت به دليل دلنشين كردن و ساده تر كردن كار با ابزار هاي اشكال زدايي و نيز آسان سازي روند مديريت خطا ها (Exception Handlind) كه بسياري از برنامه نويسان تازه كار از آن فراري هستند، تبريك گفت.
در حقيقت مايكروسافت در نسخه جديد سعي كرده است برنامه نويسان را به كمك يك دو جين ابزار جانبي سودمند با پيچيده ترين تكنيك هاي برنامه نويسي شي گرا آشتي دهد و اهميت ويژوال استوديوي 2005 نيز در همين موضوع نهفته است.مجموعه ابزارها و امكانات جديد ويژوال بيسيك دات نت2 در راستاي تعهد مايكروسافت به نظريه و رهيافت RAD (Rapid Application Development) كه زبان برنامه نويسي ويژوال بيسيك اساسا براي تحقق آن پديده آمده است،قابل توصيف هستند.

قابليت هاي جديد
ويژوال بيسيك دات نت 2 در بر گيرنده چند قابليت هيجان انگيز ،سودمند و مهم است كه مسلما مورد توجه برنامه نويسان علاقمند به اين زبان قرار خواهد گرفت .قابليت اول اين است كه اگر معتقد بوديم كه زبان هاي ويژوال بيسيك دات نت و سي شارپ حدود 90 درصد مشابه يكديگرند،اكنون همان اندك تفاوت ميان قابليت هاي اين دو در نسخه دوم دات نت از ميان رفته است و به جرات مي توان گفت هيچ تفاوت مهمي ميان اين دو زبان وجود ندارد؛جز اينكه برخي برنامه نويسان گرامر و Syntax زبان سي شارپ را كه (شباهت زيادي به جاوا دارد)بيشتر مي پسندند.

دو مورد از تفاوتهاي جزئي اين دو زبان كه در نسخه اول دات نت وجود داشت و اينك به مجموعه قابليت هاي ويژوال بيسيك افزوده شده است عبارتند از:امكان مستند سازي سورس كد با استفاده از XML و قابليت Overloading Operator يا تعريف عملگر هاي اضافي.

XML Documentation
به كمك اين قابليت مي توانيد اجزاي مختلف سورس كد برنامه خود را با فرمت XML مستند كنيد. اين مستندات قطعه قطعه بعدا مي توانند يك سند راهنماي كامل در باره سورس كد بسازد. ويژگي مذكور در ويژوال سي شارپ 2003 وجود دارد، اما ويژوال بيسيك2003 فاقد آن است.

اكنون اين فابليت در نسخه جديد افزوده شده است. استفاده از اين فابليت بسيار آسان است. مثلا اگر تابعي بنويسيد و بالاي اولين خط آن (قبل از نام تابع) سه بار كاراكتر كوتيشن را تايپ كنيد و سپس Enter كنيد،با توجه به نام تابع و پارامتر هاي آن يك قطعه راهنماي خالي با فرمت XML درج مي شود كه مي توانيد آن را اصلاح و كامل كنيد.

``` <summary>
```


``` <summary>
```


<param name="param”> </param>
``` <remarks></remarks>
Sub Testsub(ByVal param1 As Integer)
End Sub
Operator Overloading
يكي ديگر از قالبيت هاي سودمندي كه ويژوال بيسيك 2003 از آن محروم بود،امكان تعريف كردن عملگرهاي عمومي رياضي (4 عمل اصلي )، عملگر هاي منطقي (NOT , OR, AND) و عملگر هاي مقايسه اي (مثل >,<,=) براي انواع داده ها،كلاس ها و اشياي تعريف شده توسط برنامه نويس بود. چنان كه مي دانيد در حالت عادي از عملگري مانند + فقط مي توان براي جمع زدن دو عدد يا متغيير عددي استفاده كرد.

اما قالبيت Operator Overloading كه در دل منطق شي گرايي پلتفرم دات نت وجود دارد،امكان پيوند دادن دو مقدار رشته اي را از طريق اين عملگر فراهم مي سازد. مثلا مي توانيد يك متغير رشته اي با مقدار I am را با يك متغير ديگر با مقدار a developer به وسيله علامت + جمع بزنيد. در اين صورت آن عبارت به صورت I am a developer خواهد بود. اين ويژگي در برخي از كلاس هاي ديگر چارچوب دات نت نيز وجود دارد. اما متاسفانه در VB.NET برنامه نويس نمي توانست براي كلاس ها و اشيايي كه خود مي سازد،از اين قابليت استفاده كند. اين محدوديت در VB.NET 2.0 برطرف شده است. مثلا شما مي توانيد يك نوع داده جديد(Type) تعريف كنيد كه شامل يك آرايه دو بعدي باشد(مثل يك نقطه در فضاي برداري x-y) و براي اين كلاس يك عملگر + مخصوص تعريف كنيد كه وقتي دو متغير از اين نوع را با هم جمع مي زنيد،مقدارهاي بعد اول (X)با هم و مقدارهاي بعد دوم (Y) نيز به طور جداگانه با هم جمع شوند.

Reg – Free COM
قابليت بسيار مهم و جالبي كه به ويژوال بيسيك 2005 افزوده شده است،تكنيك Reg – Free COM نام دارد كه حتما بسياري از برنامه نويسان دات نت منتظر آن بودند.

اغلب برنامه نويسان ويژوال بيسيك6 به خاطر مي آوردند كه يكي از دردسرهاي مهم برنامه نويسي براي سيستم عامل ويندوز ،ساختن برنامه نصب (Installation) و ثبت كامپوننت هاي عناصر اصلي برنامه در رجيستري ويندوز بود. دو كابوس هميشگي برنامه نويسان ،نحوه نصب عناصر ActiveX وDLL هاي حاوي اشيا COM وCOM+ بود.
اين مشكل چندان اهميت داشت كه برنامه نويسان به شوخي نام DLL Hell يا جهنم DLL را بر آن نهاده بودند. خوشبختانه پلتفرم دات نت اين مشكل را به طور عمده حل كرد؛زيرا به دليل حضور چهارچوب دات نت در سيستم عاملي كه قرار است يك برنامه نوشته شده با Visual Studio.NET روي آن اجرا شود، ديگر نيازي به رجيستر كردن كامپوننت ها و اشياي برنامه نيست و عمل نصب برنامه خيلي ساده با كپي كردن فايل هاي نرم افزار داخل پوشه روي هارد ديسك انجام مي شود.

با اين حال عيب كار در اينجا بود كه برنامه نويسي كه با هزار زحمت توانسته بودند يك شي COM يا ActiveX بي درد سر و بي عيب بسازد،در صورت مهاجرت به پلتفرم دات نت مجبور بودند يا به كلي از خير اين اشيا استفاده مي كردند،همچنان ناگزير از نصب اين اشيا به روش قديمي (به رقم نصب آسان ساير قسمت هاي ساخته شده بر اساس چارچوب دات نت ) بودند.

اكنون ويژوال بيسيك 2005 با معرفي تكنيك Reg –Free COM اين معضل را به طور عمده از پيش روي برنامه نويسان برداشته است. به كمك اين تكنيك مي توانيد اغلب اشياي COM و ActiveX سابق خود را با يك اينترفيس دات نتي بپوشانيد. به طوري كه بتوان آن ها را مانندDLL هاي توليد شده بر اساس دات نت خيلي ساده داخل پوشه برنامه كپي كرد و بدون نياز به ثبت در ريجيستري ويندوز مورد استفاده قرار داد. براي استفاده از اين قابليت كافي است در قسمت Refrence هاي پروژه به DLL حاوي ActiveX يا COM ارجاعي تعريف كنيد. سپس در پنجره Properties گزينه Isolated را معادل ‏True قرار دهيد. البته اين قابليت محدوديت هايي هم دارد:يكي اينكه به ويندوز XP يا نسخه هاي بالا تر نياز دارد. ديگر اينكه فقط براي كامپوننت هاي in-proccess قابل استفاده است . اين قابليت همچنين براي آن دسته از اشياي COM كه جزيي از سيستم عامل ها هستند كار نمي كند و نهايتا اين كه نمي توانيد از قابليت مذكور براي آن دسته از اشياي COM و ActiveX كه به حضور نرم افزارهاي بزرگي مثل Word وابسته هستنداستفاده كنيد. اين گونه ActiveX ها فقط وقتي كار مي كنند كه نرم افزار مربوطه (مثلا اكسس) قبلا روي كامپيوتر نصب و رجيستر شده باشد.

My Namespace
يكي از اقداماتي كه مايكروسافت براي آسان كردن برنامه نويسي با ويژوال بيسيك دات نت يا به قول مايكروسافت تحقق ايده RAD انجام داده، افزون يك Namespace با نام My است. به كمك اين Namespace مي توانيد به برخي از قابليت هاي پر مصرف سيستم عامل ويندوز مانند دسترسي به فايل سيستم ،پخش صوت ،امنيت و تنظيمات سيستم دسترسي سريع داشته باشيد. اين Namespace شامل اجزاي اصلي زير است:

Application : امكانات مختلفي در اختيار برنامه نويس قرار مي دهد. مثلا مي تواند داخل سيستم EventLog ويندوز بنويسد و بخواند.
Computer :دسترسي آسان و سريع به برخي قسمت هاي كامپيوتر مانند فايل سيستم،ماوس،صفحه كليد،ساعت،كليپ بورد،صوت ،رجيستري،شبكه،پورت سريال و چند بخش ديگر را فراهم مي كند.
Forms : از طريق اين كلكسيون برنامه نويسان مي توانند به instanceهاي فرم هايي كه ساخته اند دسترسي سريع داشته باشند.
Resources : اين كلكسيون يك دسترسي مستقيم به كلاس هاي زير را فراهم مي كند.

System.Globalization.CultureInfo
System.Resources.ResourceManager
Setting : اين كلكسيون دسترسي به تنظيماتي كه براي نرم افزار خود ايجاد كرده ايد را آسان مي سازد.
User : اين شي درباره وضعيت امنيتي كاربر كنوني سيستم اطلاعات ميدهد. با اين كلاس مي توانيد بفهميد هم اكنون كدام كاربر با چه سطح دسترسي وارد سيستم شده است. قطعه كد 2 چند مثال از كاربرد My را نشان ميدهد. قسمت اول داخل تابع Form1Load تمام پارتيشن هاي هارد ديسك را مرور مي كند و ميزان فضاي خالي آن ها را نشان مي دهد.

قسمت دوم كنترل مي كند كه نام كاربر فعلي چيست و آيا عضو گروه Administrator هست يا نه . قسمت سوم هم يك فايل صوتي را پخش مي كند.از آنجا كه My فقط يك Namespace است ،مي توانيد با ايجاد كتابخانه هاي جديد آن را توسعه دهيد و قابليت ها،كلاس ها و كلكسيون هاي جديدي به آن اضافه كنيد. بنابراين My در واقع نوعي تفكر برنامه نويسي است. تفكري كه بر اساس آن ،كلاس ها و ديگر قابليت هاي زبان پر كاربرد ويژوال بيسيك دات نت را مي توانيد دم دست خود بگذاريد تا استفاده از آن ها در سراسر سورس كد سريع و آسان باشد.

Private Sub Form1_Load(ByVal sender As System.Object,ByVal e As System.EventArgs)
For Each drv As IO.DriveInfo In My.Computer.FileSystem.Drives
If drv.IsReady Then
Debug.WriteLine(drv.AvailableFreeSpace)
End If
Next
MsgBox(My.User.Name & “ : ” & My.User.IsInRole(“Administrators”))
My.Computer.Audio.Play(“C:\sound.wav”)
End Sub
منبع : مجله شبكه 65
Sloveir آنلاین نیست.   پاسخ با نقل قول
2 کاربر برای پست مفید Sloveir تشکر کرده اند
djmajid46 (Thursday 23 July 2009), saadatfar1 (Tuesday 29 July 2008)

.......

قدیمی Saturday 16 September 2006, 04:49 PM   #2
Sloveir
شهرام درويشي - مدير انجمن
 
Sloveir آواتار ها
 
تاریخ عضویت: Tuesday 11 January 2005
نوشته ها: 281
با تشکر: 2
تشکر شده 632 بار 50 پست
Sloveir کاربر بسیار مشهورSloveir کاربر بسیار مشهورSloveir کاربر بسیار مشهورSloveir کاربر بسیار مشهورSloveir کاربر بسیار مشهورSloveir کاربر بسیار مشهورSloveir کاربر بسیار مشهورSloveir کاربر بسیار مشهورSloveir کاربر بسیار مشهور
Post

آشنايي با ويژوال بيسيك 2005(ادامه)

كليد واژه هاي جديد
علاوه بر قابليت هاي اصلي و جديد ،چند ويژگي كوچك اما مفيد نيز در syntax ويژوال بيسيك 2005 ديده مي شود. از جمله مي توان كليد واژه هاي IsNot و Using را نام برد.كليد واژه IsNot خيلي ساده معادل تركيب دو كليد واژه IsوNot است. برنامه نويسان ويژوال بيسيك از تركيب اين دو به وفور استفاده مي كند. يكي از كاربردهاي متداول اين تركيب هنگامي است كه مي خواهيم كنترل كنيم يك شي پوچ ،(null در زبن هايي مثل سي شارپ و جاوا و Nothing در زبان ويژوال بيسيك) نيست. در اين صورت مي توان چنين نوشت:

If Not (thisObject is nothing) then
….
End If
اكنون در VB.NET 2.0 مي توانيد بنويسيد:

If thisObject IsNot Nothing then
….
End If
البته نتيجه آن فرقي با شيوه قبلي ندارد اما منطقي تر به نظر مي رسد. كليد واژه Using نيز يك كليد واژه جديد است كه شما را از نوشتن دو سه خط كد براي استفاده از تابع Dispose به منظور آزاد كردن فضاي حافظه از يك شي كه ديگر به آن احتياج نيست، بي نياز مي كند. كد 3 نمونه اي از روش مرسوم براي آزاد كردن فضاي حافظه را نشان مي دهد. مي توانيد در قطعه كد 4 ببينيد كه با استفاده از كليد واژه Using ديگر نيازي به فراخواني مستقيم Dispose نيست و اين عمل خود به خود صورت مي گيرد. بنابر اين مي توانيد كد كوتاهتري بنويسيد.

Private Sub Form1_Paint(ByVal sender As Object,ByVal e As PaintEventArgs) _ Handles MyBase.Paint

Dim myFont As Font

Dim my Brush As Brush

Try


MyFont = New Font (“Verdana”,12)


My Brush = New solidBrush(Color.FromArgb(123,0,123)
E.Gaphics.DrawString( _ “Hello, World !” , myFont,myBrush,0,0)


Finally
If myFont IsNot Nothing then

MyFont.Dispose()
End If


If myBrush IsNot Nothing then


MyBrush.Dispose()
End If
End Try
End sub
Private Sub Form1_Paint(ByVal sender As Object,ByVal e As PaintEventArgs) _ Handles MyBase.Paint
‘create a new font.
Using myFont As New Font(“Verdana”,12)
‘create a new solid brush.
Using mybrush As New solidBrush( _Color.FromArgb(123,0,123))
E.Gaphics.DrawString( _ “Hello, World !” , myFont,myBrush,0,0)
End Using
End Using
End sub
Generic Declaration
اعلان ژنتيك اشيا و متغيرها يكي ديگر از قابليت هاي VB.NET 2.0 است. اصولا در يك زبان برنامه نويسي شي گرا بعضي از كلكسيون ها را مي توان با انواع متفاوتي از داده ها پر كرد. مثلا يك ساختار ارايه اي برنامه نويس را مجبور نمي كند كه حتما از داده هاي عددي يا رشته اي استفاده كند. يك آرايه ممكن است رشته اي باشد،يك آرايه ديگر ممكن است با مقادير Integer پر شود و آرايه سوم از نوع Boolean باشد. در واقع اين اشيا در زبان ويژوال بيسيك با يك Type از نوع Object تعريف مي شوند. اما اشكال قضيه اين است كه ساختار كد ،شما را ملزم به حفظ يكپارچگي انواع داده هايي نمي كند كه داخل يك شي مي گذاريد.

بنابراين اگر مثلا يك ArrayList از شي خاصي بسازيد و سهولا يا عمدا يك مقدار از نوع متفاوت(مثلا رشته اي) به آن بدهيد،برنامه دچار خطا مي شود. براي جلوگيري از اين حالت در برنامه نويسي پيشرفته از Generic Declartion استفاده مي شود. در اين صورت يك Instance خاص از يك كلكسيون فقط مجاز به استفاده از نوع داده مشخصي خواهد بود. مثلا به قطعه كد 5 نگاه كنيد .در اين كد كلاسي به نام Member تعريف كرده ايم كه حاوي نام و سن افراد است. در تابع AddMember فهرستي از نوع Member تعريف نموده ايم و به كمك كليد واژه Of آن را به همين نوع محدود كرده ايم .بنابر اين متد Add در اين فهرست فقط مجاز به اضافه كردن مقاديري از نوع Member است و نمي توان به عنوان مثال يك مقدار String به آن داد.

Class Member
Public Name As String
Public Age As Integer

Public Sub New(ByVal Name As Stirng,ByVal Age As String)
Me.Name=Name
Me.Age=Age
End Sub
End Class
Sub AddMembers()
Dim MemberList As New List (Of Member)
MemberList.Add(New Member (“Behrroz”,30))
MemberList.Add(New Member (“Behrroz”,26))
End Sub
پيشرفتهاي مربوط به ويرايشگر كد و IDE
تعدادي از مهم ترين قابليت هاي جديد ويژوال بيسيك دات نت2 در پنجره كد نويسي قابل لمس هستند و در مجموع روند كد نويسي درون IDE بسيار آسان تر از گذشته شده است.

IntelliSence و Code Snippets
حتما با ويژگي IntelliSence در ويژوال استوديو آشنايي داريد. اين قابليت هنگام نوشتن كد بعضي از كليد واژه هاي Syntax برنامه نويسي مثل انواع type را حدس مي زندو پيشنهاد مي كند و هنگامي كه يك شي را از روي كلاسي اعلان مي كنيد،فعال مي شود. به گونه اي كه به محض قرار دادن يك نقطه پس از نام متغير يا شي (Scope Resolution) فهرستي از خصوصيات (Properties) ،توابع (Methods) و ديگر متعلقات كلاس آن شي در يك فهرست پويا ظاهر مي شود و مي توانيد گزينه مورد نظر خود را انتخاب كنيد و Enter كنيد.

به اين ترتيب نيازي به حفظ كردن املاي صحيح نام خصوصيات و توابع كلاس ها نداريد و سرعت برنامه نويسي شما دو چندان مي شود. قابليت IntelliSence در زماني هم كه در كد نويسي اشتباه واضحي مرتكب مي شويد، زير عبارت نادرست خط مي كشد و با بردن اشاره گر ماوس روي آن، مي توانيد پيغام هشدار ويرايشگر كد را بخوانيد. ويژوال بيسيك 2005 در مورد تشخيص اين خطاها و نمايش پيام مناسب هوشمندتر و دقيقتر است و شما را در اصلاح كد خود بهتر راهنمايي مي كند. اين قابليت در مورد سورس HTML و ASP.NET نيز بهبود يافته است ودر فايل هاي XML، به شرط داشتن يك الگو يا Schema از قبل تعريف شده كه در پنجره پروژه (Solution Explorer) نيز وارد (Import) شده باشد، ويژوال استوديو 2005 مي تواند آن الگو را بخواند و هنگامي كه المان هاي XML را مي نويسيد،با استفاده از IntelliSence به كمكتان بيايد.
قابليت IntelliSence در ويژوال بيسيك2005 توسعه يافته است و اكنون ويژگي ديگري به نام Code Snippets نيز به آن افزوده شده است. اگر در هر جايي از سورس كد كليك راست كنيد و گزينه Code Snippetsرا انتخاب نماييد،يك فهرست طبقه بندي شده از قطعه كدهاي از پيش نوشته شده ظاهر مي شود.مثلا ممكن است در سراسر برنامه از منطق شرطي If…Then…End If استفاده كنيد. قابليت Code Snippets شما را از تايپ كردن اين قطعات متداول و تكراري بي نياز مي كند تا بتوانيد به برنامه نويسي سرعت ببخشيد. بعضي از اين قطعات واقعا كار راه انداز هستند. مثلا تعريف يك اتصال به ديتابيس يا نوشتن يك فايل روي هارد ديسك كارهايي هستند كه در بسياري از برنامه ها انجام مي شود.اين قابليت در فايل هاي XML نيز عمل مي كنند.
كتابخانه Code Snippets بيش از 400قطعه كد پر كاربرد و سودمند دارد؛البته قابل گسترش نيز هست. خودتان مي توانيد قطعاتي كه معمولا در برنامه ها زياد به كار مي بريد را به اين كتابخانه بيفزاييد، كتابخانه هاي ديگر برنامه نويسان را از سايت هاي ايترنتي برنامه نويسان دانلود كنيد يا قطعات خود را با آنها به اشتراك بگذاريد. يك مزيت اين قابليت اين است كه با بعضي سبك ها و شيوه هاي كد نويسي كه تصادفا نمي دانستيد،آشنا مي شويد و از اين طريق ده ها نكته و ترفند كد نويسي را مي آموزيد. ديگر اين كه، به كار گيري اين كتابخانه ها در مقياس جهاني موجب استاندارد شدن شيوه نگارش قطعات جزئي سورس كد برنامه ها در پروژه هاي مختلف مي شود و سبك و سياق كد نويسي برنامه نويسان را به يكديگر نزديك مي كند.

AutoCorrent
يكي ديگر از قابليت هاي جالب در ويرايشگر كد با سيستم IntelliSence مرتبط نيز هست،قابليت اصلاح خودكار كد است كه شباهت زيادي به قابليت AutoCorrent در نرم افزار Microsoft Word ارد و مي تواند انواع اشتباهات شما را هنگام كد نويسي تشخيص دهد و راه حل پيشهاد دهد. شايد ساده ترين اشتباه ،تايپ كردن املاي نوع يك داده باشد. مثلا اگر به جاي Integer بنويسيد Integr ،ويرايشگر متوجه مي شود و مي توانيد با كليك روي علامت قرمز رنگ در انتهاي خطي كه ويرايشگر زير عبارت غلط كشيده است،پيشنهاد تصحيح عبارت را ببينيد.
اين ابزار دو نوع اشتباه ديگر را نيز اعلام مي كند. يكي از اشتباهات متداول ،استفاده از يك كلاس بدون Import يا وارد كردن Namespace آن به ابتداي سورس كد است. در اين صورت ويرايشگر كد شما رابه شما هشدار مي دهد كه Type مذكور تعريف نشده است وتمام گزينه هاي ممكن براي اصلاح آن را مشاهده مي كنيد،اشتباه در منطق برنامه نويسي است. مثلا اگر يك خصوصيت را به صورت فقط خواندني يا ReadOnly تعريف كنيد،ديگر نمي توانيد براي تغير مقدار آن از كليد واژه Set استفاده كنيد. در اين صورت ويرايشگر پيشنهاد مي كند يا قسمت Set را پاك كنيد يا خصوصيت را از حالت فقط خواندني خارج نماييد.
قابليت AutoCorrect مجموعا مي تواند حدود 230 خطاي متداول را شناسايي كند.

Debugger Data Tips
اگر ديده باشيد ،هنگامي كه ويژوال استوديوي 2003 در وضعيت Mode اشكال زدايي قرار دارد،به محض قرار دادن اشاره گر ماوس روي يك متغير ساده (مثلا رشته اي) ،مقدار آن را در همان لحظه به صورت يك Tipنشان مي دهد.اين قابليت در ويژوال استوديوي 2005 به طور محسوس ارتقا يافته است و اكنون مي تواند انواع پيچيده تري از متغير ها و انواع داده ها را نمايش دهد.

Exception Assistant
يك Exception زماني رخ مي دهد كه برنامه در حال اجرا است،اما خطايي رخ مي دهد. در ويژوال استوديو 2005 قابليت دستيار خطا همچون ويژگي AutoCorrect اطلاعات سودمند و مشكل گشايي درباره خطاي زمان اجرا در اختيار برنامه نويس قرار مي دهد و حاوي اطلاعاتي است كه او را براي جلوگيري از تكرار اين خطا راهنمايي مي كند.

Edit and Continue
همان طور كه مي دانيد در ويژوال استوديو 2003 هنگامي كه در وضعيت اجراي برنامه و اشكال زدايي قرار داريد،نمي توانيد سورس كد را ويرايش و بازنويسي كنيد.در ويژوال استوديو2005 اين محدوديت وجود ندارد و مي توانيد در وضعيت Debugging به محض برخورد با يك ايراد در سورس ،آن را اصلاح نماييد و مجددا اجرا كنيد.اين قابليت سرعت برنامه نويسي را به طور محسوسي بالا خواهد برد.

كدهاي رنگي بهتر
در حالي كه خواندن سورس كد يك برنامه در ويرايشگر ساده متن مانند Notepad ممكن است دشوار باشد،اين كار در ويژوال استوديوي 2003 به دليل استفاده از سيستم رنگ آميزي كد بسيار راحت است.ويرايشگر كد در ويژوال استوديوي2005 كار را حتي از نسخه قبلي نيز آسان تر كرده استو اين پنجره را به يك ويرايشگر هوشمند تبديل كرده است. به عنوان مثال ، وقتي به كمك Code Snippets يك قطعه كد جديد را وارد مي كنيد،قسمت هايي از قطعه (مانند نام متغير هاي جديد داخل قطعه) كه بايد توسط شما تغيير نام داده شوند و يا مقدار دهي و تكميل شوند،با رنگ سبز،برجسته (Highlight)مي شوند.همچنين وقتي در حال نوشتن يك خط هستيد،كنار پنجره كد و دقيقا همان جايي كه شماره خط نمايش داده مي شود،يك نوار باريك زرد رنگ به نمايش در مي آيد كه نشان مي دهد اين خط را تازه نوشته ايد. وقتي فايل سورس كد را ذخيره مي كنيد ،اين نوار سبز رنگ مي شود كه نشان مي دهد اين خط را به تازگي نوشته ايد و آن را ذخيره كرده ايد. به علاوه ،اكنون متغير هاي رشته اي به رنگ قرمز نمايش داده مي شوند تا در سراسر سورس كد به راحت از خود كد قابل تمايز باشند. بهبود رنگ آميزي كد را مي توانيد در زمينه هاي ديگر نيز مشاهده كنيد.

Immediate Window
ويژوال بيسيك 2005 قابليتي را كه قبلا در ويژوال بيسيك 6 وجود داشت ،دوباره به IDE افزوده است. اين قابليت Design-Time Expression Evaluation نام دارد و از طريق پنجره Immediate Window كه احتمالا برايتان آشنا است در دسترس است.
به كمك اين پنجره مي توانيد هنگامي كه ويژوال بيسيك 2005 در وضعيت طراحي (Design Mode)است،خارج از كد برنامه و روند آن هر نوع تابعي از مجموعه چارچوب دات نت را فرا بخوانيد و با متغير ها كار كنيد.بنابر اين مجبور نيستيد براي آزمودن نتيجه يك كد ساده كه شايد ارتباطي هم با منطق كلي برنامه ندارد،آن را به صورت موقتي داخل يكي از توابعي كه نوشته ايد بگذاريد تا چيزي بررسي كنيد و بعدا آن خط را پاك كنيد. اين نوع آزمايش ها را مي توانيد داخل پنجره Immediate انجام دهيد و جالب تر اين كه ،قابليت IntelliSense اين جا هم كار مي كند! به عنوان نمونه اگر خط زير را داخل پنجره Immediate بنويسيد و Enter كنيد،مقدار فضاي خالي اولين درايو سيستم را به شما بر مي گرداند(دقت كنيد اين خط با علامت سوال شروع شده است):


? System.IO.DriveInfo.GetDrves()(1).AvailableFreeSpa ce
Data Source
يكي از ويژگي هاي ساده اما بسيار سودمند ويژوال استوديوي 2005 ،افزودن پنجره Data Source است.حتما در برنامه هايي كه تا گنون نوشته ايد،با اين مساله روبرو شده ايد كه اگر خودتان از روش متمركزي براي اتصال به بانك اطلاعاتي استفاده نكنيد،مجبوريد بارها يك شي Connection را تعريف كنيدو آنرا در قسمت هاي مختلف برنامه مورد استفاده قرار دهيد. پنجره Data Source براي تعريف يك اتصال متمركز به بانك اطلاعاتي تعبيه شده است. بنابراين در تمام قسمت هاي يك پروژه مي توانيد از اين اتصال استفاده كنيد.براي پيوند دادن اشيا (Binding) به يك اتصال تعريف شده در اين پنجره كافي است از روش Drag-and-Drop استفاده كنيد.
Sloveir آنلاین نیست.   پاسخ با نقل قول
3 کاربر برای پست مفید Sloveir تشکر کرده اند
aryalink (Monday 12 October 2009), djmajid46 (Thursday 23 July 2009), saadatfar1 (Tuesday 29 July 2008)
قدیمی Monday 10 August 2009, 08:44 AM   #3
hossein54
كاربر عادي
 
تاریخ عضویت: Tuesday 15 August 2006
نوشته ها: 1
با تشکر: 0
تشکر شده 0 بار 0 پست
hossein54 کاربر عادی
Smile تشكر

از مطالب جالب و سود مند شما متشكرم
hossein54 آنلاین نیست.   پاسخ با نقل قول
پاسخ

ابزارهای موضوع
نحوه نمایش

قوانین ارسال
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is فعال
شکلک ها فعال است
کد [IMG] فعال است
کدهای HTML غیر فعال است
انتخاب سریع یک انجمن


اکنون ساعت 01:29 AM برپایه ساعت جهانی (GMT - گرینویچ) +3.5 می باشد.





Powered by vBulletin Version 3.7.3
Copyright ©2000 - 2010, Jelsoft Enterprises Ltd.

Persian Language By Persian Forum Ver 1.0