معرفی اوليه VB.NET

يک برنامه کامپيوتری ، از مجموعه ای دستورالعمل که نوع و نحوه انجام يک فعاليت را برای کامپيوتر مشخص می نمايند ، تشکيل می گردد. دستورالعمل های نوشته شده بعنوان نمونه ممکن است به کامپيوتر اعلام نمايند که تعدادی از اعداد را با يکديگر جمع و يا دو عدد را بايکديگر مقايسه و بر اساس نتيجه بدست آمده ، اتخاذ تصميم نمايد. دستورالعمل های نوشته شده ، صرفا” برای کامپيوتر قابل فهم و اجراء خواهند بود.کامپيوتر دستورالعمل های نوشته شده را اجراء و ماحصل آن رسيدن به اهدافی خواهد بود که بر اساس آن برنامه طراحی و پياده سازی شده است . دستورالعمل ها ، می بايست با استفاده از يکی از زبانها ی برنامه نويسی نوشته شده ( کد ينگ ) و در ادامه در اختيار کامپيوتر قرار داده شوند. زبانهای برنامه نويسی متعددی نظير : فرترن ، بيسيک ، کوبال ، پاسکال، ،C ، جاوا ، ويژوال بيسيک و … وجود دارد.

برنامه نويسی کامپيوتر ، مشابه آموزش گره زدن کفش به کودکان است . برای نيل به هدف فوق ، می بايست تمامی مراحل لازم بصورت شفاف به کودکان آموزش داده شود . کودکان با دنبال نمودن دستورالعمل های ارائه شده ، قادر به گره زدن کفش خود خواهند بود ( روش انجام اين کار برای آنان مشخص شده و بر اساس آن ، امکان نيل به هدف مورد نظر توسط کودکان فراهم می گردد ) . VB.NET ، زبانی است که می توا ن نحوه نيل به يک خواسته را بکمک آن بصورت شفاف ( نظير آموزش گره زدن کفش به کودکان ) مشخص و کامپيوتر با دنبال نمودن مراحل مشخص شده ، خواسته مورد نظر را محقق نمايد. با استفاده از VB.NET ، می توان محصولاتی راايجاد که زمينه استفاده از آنان در محيط ويندوز و اينترنت ، وجود خواهد داشت . فراموش نکنيم در زمان فراگيری يک تکنولوژی در ابتدا می بايست شيوه راه رفتن را بياموزيم و در ادامه اقدام به دويدن نمود .
VB.NET يکی از زبان های حمايت شده در دات نت می باشد .

با استفاده از زبان فوق علاوه بر اينکه می توان برنامه های مبتنی بر ويندوز را پياده سازی نمود ، امکان استفاده از آن بعنوان زبان مورد نظر در زمان ايجاد برنامه های مبتنی بر وب که از تکنولوژی ASP.NET استفاده می نمايند ، نيز وجود خواهد داشت . با توجه به اهميت و جايگاه خاص اين زبان در دات نت ، مجموعه مقالاتی در رابطه با آموزش اصولی اين زبان آماده شده که بتدريج بر روی سايت قرار خواهند گرفت . در اولين مقاله از اين مجموعه به معرفی اوليه VB.NET خواهيم پرداخت . در ابتدا لازم است با ويژگی های منحصر بفرد برنامه های مبتنی بر ويندوز در قياس با برنامه های مبتنی بر DOS ، آشنا شده و پس از مروری مختصر به روند شکل گيری نسخه های متعدد ويژوال بيسيک ، با نحوه نصب آن نيز آشنا شويم .

برنامه نويسی مبتنی بر DOS در مقابل ويندوز
برنامه نويسی مبتنی بر ويندوز دارای تفاوت های عمده ای نسبت به برنامه نويسی سنتی در محيط DOS است.برنامه های DOS ، مسيری دقيق و مشخص را ازابتدا تا پايان دنبال می نمايند . رويکرد فوق ، باعث بروز محدوديت هائی در رابطه با عملکرد برنامه ها از يکطرف و تحميل محدوديت هائی به کاربران در طی نمودن مسير مشخص شده ، می گردد. از زاويه ای خاص می توان عملکرد يک برنامه مبتنی بر DOS را مشابه قدم زدن در يک راهرو ( سالن )، در نظر گرفت . بمنظور رسيدن به نقطه انتهائی سالن ، می بايست طول سالن طی تا به انتهای آن رسيد . در اين راستا از موانع متعدد موجود در مسير ، می بايست عبور تا سرانجام به مقصد مورد نظر رسيد . در زمان پيمودن مسير ، صرفا” امکان بازنمودن درب های خاصی ، وجود خواهد داشت . ويندوز ، دنيای جديدی از برنامه نويسی مبتنی بر “رويداد” را ايجاد نموده است . کليک نمودن موس ، تغيير اندازه پنجره ، تغيير محتويات يک Textbox ، نمونه هائی از يک “رويداد” می باشند.

کدهای نوشته شده ، نحوه برخورد با يک رويداد را مشخص می نمايد. برای رسيدن به انتهای يک سالن کافی است بر روی “انتهای سالن ” ، کليک نمود و ديگر ضرورتی به پيمودن تمامی مسير تا رسيدن به انتهای سالن نخواهد بود . درصورتيکه به انتهای سالن رسيده باشيم و متوجه گرديم که اين مکان ، محلی نيست که انتظار آن را داشته ايم ، بسادگی می توان مقصد جديدی را برای خود انتخاب ، بدون اينکه ضرورتی به برگشت در نقطه آغازين مسير وجود داشته باشد. برنامه نوشته شده عکس العمل های لازم در ارتباط با حرکت شما را بهمراه عمليات مربوطه بمنظور تکميل فعاليت ها ی مورد نظر انجام خواهد داد .

با استفاده از VB.NET ، می توان کدهای لازم بمنظور ارائه عکس العمل لازم در زمان تحقق يک رويداد را نوشت .در اين راستا ، برنامه نويسان می توانند کدهای لازم در رابطه با رويدادهائی که امکان تحقق آنها وجود دارد را نوشته تا در زمان بروز رويداد مورد نظر ، عکس العمل لازم از طرف برنامه صورت پذيرد.در اين زمينه می توان از نوشتن کدهای ديگر بمنظور برخورد با رويدادهای غيرضروری ، صرفنظر کرد. مثلا” ويندوز قادر به تشخيص رويداد”کليک ” از “کليک مضاعف ” است . اين بدان معنی است که اگر می خواهيد برنامه مورد نظر شما ،عکس العمل لازم در ارتباط با رويداد “کليک” را داشته باشد ، می بايست صرفا” کد مربوط به رويداد ” کليک”، نوشته گردد و الزامی به نوشتن کدهای لازم بمنظور برخورد با رويداد “کليک مضاعف” ، وجود نخواهد داشت . در دنيای برنامه نويسی DOS ، کاربر عکس العمل لازم را نسبت به برنامه انجام می دهد در صورتيکه در ويندوز ، برنامه ها عکس العمل لازم را با توجه به رفتار کاربران ، انجام خواهند داد .

يکی ديگر از مزايای مهم برنامه های ويندوز ، عدم وابستگی برنامه ها به يک سخت افزار خاص است . ويندوز تمهيدات لازم در خصوص ارتباط با سخت افزار را پيش بينی و برنامه نويسان نياز به آگاهی از نحوه عملکرد يک دستگاه سخت افزاری خاص بمنظور استفاده از آن ، نخواهند داشت . مثلا” برنامه نويسان ضرورتی به آگاهی از نحوه عملکرد هر نوع چاپگر ليزری، بمنظور ايجاد خروجی مورد نظر خود در برنامه ها ، نخواهند داشت. ويندوز، امکانات لازم در اين خصوص را از طريق ارائه روتين های عمومی که با درايورهای مورد نظر مرتبط می گردند ، فراهم می نمايد. شايد همين موضوع دليل موفقيت ويندوز باشد .
روتين های عمومی اصطلاحا” Windows (API ) Application Programming Interface ناميده می شوند .

تاريخچه ويژوال بيسيک
قبل از معرفی ويژوال بيسيک در سال ۱۹۹۱ ، پياده کنندگان نرم افزار مجبور به تسلط و مهارت در زمينه استفاده از ++C بهمراه موارد پيچيده ای در اين خصوص بودند . بدين ترتيب ، صرفا” افراد خاص آموزش ديده، قادر به خلق نرم افزارهای قدرتمند بمنظور اجراء در محيط ويندوز بودند. ويژوال بيسيک ، محدوديت فوق را تغيير و می توان اين ادعا را داشت که امروزه خطوط زيادی از برنامه های نوشته شده با استفاده از ويژوال بيسيک کد شده است . ويژوال بيسيک ، ظاهر برنامه نويسی تحت ويندوز را با حذف عمليات اضافی برای نوشتن کدهای لازم جهت طراحی بخش رابط کاربر (UI) ، تغيير داده است . در اين راستا ، زمانيکه بخش رابط کاربر ، ترسيم می گردد ، برنامه نويس می تواند کدهای لازم بمنظور انجام عکس العمل مناسب در رابطه با رويداد ها را به آن اضافه نمايد .

زمانيکه ماکروسافت نسخه شماره سه ويژوال بيسيک را ارائه نمود ، مجددا” دنيای برنامه نويسی با تغيير مهمی مواجه گرديد. در اين راستا امکانات مناسبی برای نوشتن برنامه های مبتنی بر بانک های اطلاعاتی ، در اختيار برنامه نويسان قرار گرفت. ماکروسافت بدين منظور محصول جديدی با نام DAO)Data Access Objects) را ارائه نمود . برنامه نويسان با استفاده از DAO ، امکان انجام عمليات متفاوت در رابطه با داده ها را ، بدست آوردند . نسخه های شماره چهار و پنج ، قابليت های نسخه سه را افزايش و اين امکان را برای پياده کنندگان نرم افزار فراهم نمود تا برنامه های خود را جهت اجراء در محيط ويندوز ۹۵ ، طراحی و پياده سازی نمايند . در اين زمينه ، برنامه نويسان قادر به نوشتن کدهائی گرديدند که امکان استفاده از آنان توسط ساير پياده کنندگان نرم افزار که از زبانی ديگر استفاده می کردند، فراهم گرديد. نسخه شماره شش ويژوال بيسيک ، روش جديدی بمنظور دستيابی به بانک های اطلاعاتی را ارائه نمود: ADO)ActiveX Data Objects ) . يکی از اهداف اوليه طراحی ADO ، امکان دستيابی به بانک های اطلاعاتی برای پياده کنندگان برنامه های مبتنی بر وب است که از تکنولوژی ASP ، استفاده می نمايند.

همزمان با ارائه جديدترين نسخه ويژوال بيسيک که VB.NET ناميده می شود ، بسياری از محدوديت های مرتبط با ويژوال بيسيک برطرف گرديد . در گذشته ويژوال بيسيک با انتفادات فراوان مواجه ( عدم وجود امکانات مناسب در مقايسه با جاوا و يا ++C ) و بسياری آن را نظير يک اسباب بازی در دنيای وسيع زبان های برنامه نويسی می پنداشتند. VB.NET با غلبه بر مشکلات نسخه های پيشين ، توانسته است در مدت زمان کوتاهی ، بعنوان يک ابزار پياده سازی بسيار قدرتمند مطرح و گزينه ای مناسب برای برنامه نويسان در تمامی سطوح باشد .

نصب VB.NET
برای نصب VB.NET ، از دو رويکرد متفاوت می توان استفاده کرد :
• نصب بهمراه ويژوال استوديو دات نت
• نصب نسخه استاندارد

هر يک از گزينه های فوق ، امکان ايجاد برنامه های مبتنی بر ويندوز را فراهم می نمايند . مراحلی که در ادامه ذکر می گردد ، نحوه نصب ويژوال استوديو را تشريح می نمايد .
• مرحله اول : برنامه Setup.exe را از روی CD مربوطه فعال نمائيد.
• مرحله دوم : جعبه محاوره ای ، مراحل و اولويت های عمليات نصب را نشان خواهد داد. بمنظور صحت عملکرد VB.NET ، چندين Component نصب و يا بهنگام خواهند شد . اولين مرحله نصب، بهنگام سازی عناصر (Components) است . بر روی گزينه Windows Component Update ، کليک نمائيد.
• مرحله سوم : برنامه نصب در ادامه سيستم را بررسی تا نوع عناصری را که می بايست بهنگام گردند، مشخص گردد. دامنه فرآيند بهنگام سازی به وضعيت ماشينی که بر روی آن ويژوال استوديو دات نت نصب می گردد، بستگی خواهد داشت .

• مرحله چهارم : با توجه به اينکه ممکن است در زمان بهنگام سازی لازم باشد چندين مرتبه سيستم راه اندازی گردد ، از شما درخواست نام و رمز عبور شده تا ضرورتی به نشستن و نگاه کردن به کامپيوتر و واکنش لازم ( درج نام و رمز عبور به سيستم ) پس از هر مرتبه راه اندازی سيستم نباشد . بدين ترتيب در زمان راه انداری سيستم ، عمليات مربوطه بصورت اتوماتيک و بدون نياز به تايپ نام و رمز عبور ، انجام خواهد شد . عمليات فوق ، اختياری است و در صورتيکه گزينه فوق انتخاب نگردد ، با هر مرتبه راه اندازی سيستم، پيام مناسب ارائه و می بايست واکنش لازم ( تايپ نام و رمز عبور) را انجام داد .
• مرحله پنجم : در اين مرحله با فشردن دکمه ! Install Now ، بهنگام سازی عناصر (Components) آغاز می گردد . با اتمام هر يک از آيتم ها يک Check mark بمنزله اتمام مرحله مربوطه نشان داده می شود . در مقابل عنصر جاری برای بهنگام سازی نيز يک فلش قرمز رنگ نسان داده می شود.

• مرحله ششم : پس از بهنگام سازی عناصر ، مجددا” به صفحه اصلی Setup مراجعت و امکان نصب ويژوال استوديو دات نت فراهم می گردد.( کليک نمودن برروی گزينه Visiual Studio.NET )
نکته : در صورتيکه قصد داريد که از طريق ماشين فوق ، يک برنامه تحت وب پياده سازی نمائيد ، لازم است IIS و FrontPage Extensions قبلا” نصب شده باشد( بصورت پيش فرض در زمان نصب ويندوز ۲۰۰۰ نصب خواهد شد ) در صورتيکه ويژوال استوديو دات نت ، بر روی کامپيوتری نصب می گردد که دارای سيستم عامل ويندوز ۲۰۰۰ نسخه Professional است ، با يک پيام خطاء مواجه خواهيم شد( عدم وجود عناصر لازم ) با فشردن دکمه Install Component ، عمليات نصب IIS و Frontpage Extensions انجام خواهد شد . در صورتيکه دکمه Continue ، انتخاب گردد ، در آينده نمی توانيد برنامه های تحت وب را بصورت محلی بر روی کامپيوتر خود پياده سازی نمائيد .

• مرحله هفتم : نظير اکثر برنامه های نصب ، ليستی از گزينه های موجود ( شامل عناصر ) برای نصب در اختيار شما قرار می گيرد . شما می توانيد ، صرفا” آنچيزی را که بدان نياز داريد ، نصب نمائيد . مثلا” در صورتيکه ظرفيت درايو شما پايين و يا ضرورتی به استفاده از ويژوال ++C دات نت را نداريد ، می توان در اين مرحله از نصب آن صرفنظر کرد. هر گزينه ای که در اين مرحله انتخاب نمی گردد ، می توان در صورت ضرورت آن را در آينده نصب کرد. برای هر يک از امکاناتی که قرار است نصب گردند ، سه بخش اطلاعاتی متفاوت نمايش داده می شود :

بخش Feature Properties . فايل ها ی مورد نظر برای نصب و ميزان فضای مورد نياز را نشان می دهد .

بخش Feature description . هر Feature چيست و چه عملياتی را انجام می دهد .

بخش Space Allocation ، وضعيت فضای ذخيره سازی هارد را با توجه به گزينه های انتخاب شده ، نشان خواهد داد .

نکته : زمانيکه ويژوال استوديو دات نت ، اجراء می گردد مجموعه ای از اطلاعات بين ديسک و حافظه مبادله می گردد . بنابراين لازم است به ميزان کافی ظرفيت آزاد بر روی هارد ديسک وجود داشته باشد ، در اين راستا نمی توان دقيقا” مشخص نمود که به چه ميزان فضای آزاد نياز خواهد بود ولی حداقل يکصد مگابايت توصيه می گردد .
• مرحله هشتم : ويژوال استوديو دات نت ، شامل مجموعه ای گسترده از فايل های مستندات ( راهنما ) است . در اين مرحله می توان تنظيمات لازم در خصوص اجرای مستندات از طريق CD و يا دايرکتوری نصب شده بر روی هارد را انجام داد . در اين زمينه می توان يک مسير بر روی هارد را مشخص تا مستندات نصب و يا گزينه Run From Source را انتخاب تا بر اساس آن مستندات همچنان بر روی CD باقی بمانند .
• مرحله نهم : پس از انتخاب عناصر مورد نظر برای نصب ، با فشردن دکمه ! Install Now ، عمليات نصب آغاز می گردد . مدت زمان نصب ، بستگی به موارد انتخابی و نوع سيستم دارد . مثلا” نصب تمام ويژوال استوديو دات نت بهمراه تمامی مستندات بر روی يک ماشين با دارا بودن ۲۵۶ مگابايت حافظه اصلی، سرعت ۶۵۰ مگاهرتز و دوازده گيگابايـت هارد ديسک ، حدود يک ساعت طول خواهد کشيد .
• مرحله دهم : پس از اتمام مرحله قبل ، با انتخاب گزينه Service Release ، بررسی لازم در خصوص بهنگام سازی انجام می گيرد . اين عمليات از طريق اينترنت انجام خواهد شد . در اين زمينه به يک خط پرسرعت و مطمئن نياز خواهد بود .

پس از انجام مراحل فوق ، ويزوال استوديو دات نت بر روی سيستم نصب و محيط لازم برای نوشتن برنامه های VB.NET فراهم شده است .

ذخيره سازی اطلاعات در VB.NET ( بخش اول )
يکی از مهمترين مسائل موجود در هر زبان برنامه نويسی ، نحوه ذخيره و بازيابی اطلاعات مورد نياز يک برنامه است . فرض کنيد ، قصد نوشتن برنامه ای را داشته باشيم که در آن از کاربران بخواهيم نام خود را وارد نمايند . پس از درج نام توسط کاربران ، اطلاعات فوق را چگونه می بايست ذخيره نمود تا امکان استفاده از آنان در برنامه ، فراهم گردد؟. چگونه می توان اقدام به ذخيره سازی داده هائی با محتوياتی خاص نظير : “اعداد” و يا ” تاريخ ” نمود؟. نحوه بازيابی اطلاعات ذخيره شده به چه صورت است ؟ در پاسخ به تمامی سوالات فوق ، می بايست به جايگاه بسيار مهم “متغيرها ” در يک زبان برنامه نويسی ، اشاره نمود .

متغيرها يکی از مفاهيم اوليه و در عين حال بسيار مهم در دنيای برنامه نويسی می باشند . با استفاده از متغيرها يک نام ( label ) به ناحيه ای از حافظه نسبت داده شده و امکان ذخيره سازی نوع خاصی از داده در آن فراهم می گردد . هر يک از زبان های برنامه نويسی دارای امکانات و مجموعه قوانينی به منظور تعريف ، نسبت دهی و دستابی به محتويات يک متغير می باشند .با استفاده از متغيرها ، امکان انجام عمليات متفاوتی نظير محاسبات رياضی ، پردازش بر روی رشته ها ، شمارش طول يک عبارت ، در يک برنامه فراهم می گردد .

VB.NET ، زبانی قدرتمند در ارتباط با نوع داده ها می باشد . در زمان تعريف يک متغير ، می بايست نوع داده مربوطه را نيز مشخص نمود (نظير String,Integer و يا Date ) .پس از تعريف يک متغير و نوع آن ، نحوه برخورد با داده ( نحوه ذخيره و بازيابی و انجام عمليات مجاز بر روی آن ) ، مشخص می گردد.
در اين مقاله قصد داريم به بررسی امکانات VB.NET به منظور ذخيره سازی اطلاعات پرداخته و در اين راستا با نوع های متفاوت داده و جايگاه هر يک از آنان ، آشنا شويم .

متغير چيست ؟
متغير ، مرجعی برای مراجعه به يک محل خاص در حافظه بوده که برنامه نويس برای مراجعه به آن يک نام خاص را تعريف و مشخص می نمايد . از مکان های فوق به منظور ذخيره سازی اطلاعات و استفاده از محتويات مربوطه در يک برنامه استفاده می گردد. در حقيقت متغيرها ، اطلاعاتی را بطور حقيقی در خود ذخيره نمی نمايند بلکه ما را به سمت محل ذخيره سازی و در نهايت يافتن اطلاعات ، هدايت می نمايند .
مثال : در مثال زير سه متغير به منظور ذخيره سازی يک رشته Text ، يک مقدار عددی و يک تاريخ ، تعريف و مقداردهی شده اند .

Dim City As String
Dim Counter As Integer
Dim PublishDate As Date
City = “Tehran”
Counter = 190
PublishDate = #6/15/2004#

پس از تعريف هر متغير ، امکان نسبت دهی يک مقدار به آن ، مشاهده اطلاعات ذخيره شده ، بازيابی اطلاعات و يا درج اطلاعات جديد در آن ، فراهم می گردد.متغيرها از جمله عناصر ضروری برای ذخيره سازی داده در يک زبان برنامه نويسی بوده و VB.NET نيز از اين قاعده مستثنی نخواهد بود .

تعريف يک متغير
همانگونه که در مثال قبل مشاهده گرديد ، قبل از انتساب مقدار به يک متغير، می بايست اقدام به تعريف متغير و مشخص نمودن نوع داده آن نمود . پس از تعريف يک متغير و مشخص نمودن نوع آن ، نحوه برخورد با آن در برنامه مشخص خواهد شد. با استفاده از فرآيندی موسوم به Declaration ، اقدام به تعريف متغيرها و نوع آنان ، می گردد. تعريف متغيرها ، يکی از نکات مهم در دنيای برنامه نويسی است . در زما ن ايجاد صفحات پويا با استفاده از ASP.NET و توسط زبان های برنامه نويسی نظير VB.NET و يا سی شارپ ، می بايست تمامی متغيرها قبل از استفاده دريک برنامه و يا صفحه وب ، تعريف گردند .
در VB.NET برای تعريف يک متغير از کليد واژه Dim ( اقتباس شده از واژه Dimension ) ، استفاده می گردد.
مثال : در مثال زير ، يک متغير رشته ای با نام strCityName ، تعريف و در ادامه مقدار ” Teharn” ، به آن نسبت داده شده است .

Dim strCityName As String
strCityName = “Tehran”

در زمان تعريف يک متغير بطور همزمان می توان مقداری را به آن نيز نسبت داد ( تعريف و مقداردهی همزمان ) :
Dim strCityName As String = “Tehran”
امکان تعريف همزمان چندين متغير هم نوع در يک سطر نيز وجود دارد : ( تعريف همزمان چندين متغير با نوع يکسان )
Dim strCityName1 , strCityName2 , strCityName3 As String
strCityName1 = “Tehran”
strCityName2 =”Ahwaz”
strCityName3 = “Shiraz”

درادامه می توان به هريک از متغيرهای تعريف شده ، مقدار مورد نظر را نسبت داد .
مثال کاربردی : در اين مثال در ابتدا سه متغير را تعريف و پس از مقداردهی مناسب هر يک از آنان ، نتايج را با يک فرمت مناسب در خروجی نمايش خواهيم داد ( يک صفحه ASPX ) .
مرحله اول : فعال نمودن ويرايشگر صفحات وب و تايپ دستورات زير :

<Script Language= “vb” runat=”server”>
Sub Page_Load ( )
Dim ArticleTitle As String
Dim ArticleNumber As Integer
Dim PublishDate As Date
ArticleTitle = ” ذخيره سازی اطلاعات در VB.NET ( بخش اول ) “

ArticleNumber = 190
PublishDate = #6/15/2004#
Label1.Text = ArticleTitle
Label2.Text = ArticleNumber
Label3.Text = PublishDate
End Sub
</Script>
<html dir=”rtl”>

<head>
<title>ايجاد متغير </title>
</head>
<body>

عنوان مقاله :
<asp:label id=”Label1″ runat=”server” />

<br>شماره مقاله :
<asp:label id=”Label2″ runat=”server” />
<br>تاريخ انتشار مقاله :
<asp:label id=”Label3″ runat=”server” />
</body>
</html>
مرحله دوم : ذخيره نمودن برنامه فوق در فايلی با نام TestVariable.aspx
مرحله سوم : فعال نمودن فايل TestVariable.aspx در مرورگر

مرحله چهارم : برگشت به برنامه فوق و افزودن يک خط جديد ( استفاده از يک متغير که قبلا” تعريف نشده باشد )
Dim PublishDate As Date
ArticleTitle = ” ذخيره سازی اطلاعات در VB.NET ( بخش اول ) ”
ArticleNumber = 190
PublishDate = #6/15/2004#
ArticleAuthor = “مديريت وب ”

Label1.Text = ArticleTitle

مرحله پنجم : ذخيره نمودن برنامه فوق در فايلی با نام TestVariable.aspx
مرحله ششم : فعال نمودن فايل TestVariable.aspx در مرورگر

همانگونه که مشاهده می شود ، در خط شماره نه (خطی که از متغير ArticleAuthor ، استفاده شده است ) به دليل استفاده از متغيری که قبلا” اقدام به تعريف آن نشده است با يک خطاء مواجه خواهيم شد. به منظور برطرف نمودن خطای فوق ، می بايست متغير ArticleAuthor تعريف و در ادامه مقدار مورد نظر در آن ذخيره گردد.

توضيحات مثال :
• در برنامه فوق ، در ابتدا اقدام به تعريف سه متغير شده است . ما قصد داريم که از text در متغير ArticleTitle استفاده نمائيم ، بنابراين آن را به صورت String تعريف کرده ايم . شماره مقاله يک عدد صحيح است و بدين منظور و برای نگهداری مقدار مربوطه از متغيری با نام ArticleNumber و نوع صحيح استفاده شده است . از متغير PublishDate ، که از نوع Date تعريف شده است به منظور ذخيره تاريخ نشر يک مقاله، استفاده شده است .

Dim ArticleTitle As String
Dim ArticleNumber As Integer
Dim PublishDate As Date

• پس از تعريف هر يک از متغيرها ، می توان به هر يک از آنان مقدار مورد نظر را نسبت داد : مقدار ” ذخيره سازی اطلاعات در VB.NET ( بخش اول ) ” ، به متغير ArticleTitle نسبت داده شده است . در اين رابطه ، مقدار مورد نظر بين علامت کوتيشن قرار داده شده است . بدين ترتيب به VB.NET اعلام می شود که ما قصد نسبت دهی يک text به يک متغير را داريم . در صورتی که تمايل به انتساب يک مقدار عددی به متغيری را داشته باشيم ، می بايست علامت کوتيشن را حذف نمائيم. در متغيردوم ، مقداری صحيح و عددی به ArticleNumber ، نسبت داده شده است . در نهايت مقداری از نوع Date به متغير PublishDate ، نسبت داده شده است .
ArticleTitle = ” ذخيره سازی اطلاعات در VB.NET ( بخش اول ) “

ArticleNumber = 190
PublishDate = #6/15/2004#

• در ادامه ، سه کنترل <asp:label> ، و با نام Label1,Label2 و Label3 ايجاد و مقدار خصلت Text هر يک از آنان ، محتويات هر يک از سه متغير تعريف شده، در نظر گرفته شده است .
Label1.Text = ArticleTitle
Label2.Text = ArticleNumber
Label3.Text = PublishDate

• در ادامه ، يک خط جديد به برنامه اضافه گرديد تا نشان داده شود که در صورت استفاده از يک متغير که قبلا” آن را تعريف نکرده ايم ، با چه نوع خطائی برخورد خواهيم کرد. علت بروز خطاء ، به عدم تعريف متغير ArticleAuthor ، برمی گردد . برای رفع اشکال فوق ، می بايست متغير ArticleAuthor را در ابتدا تعريف نمود :
Dim ArticleAuthor As String
انواع نوع های ساده
VB.NET دارای دوازده نوع داده متفاوت بوده که می توان آنان را به سه گروه عمده تقسيم نمود : نوع های عددی ، نوع های حرفی ( متنی ) و نوع های متفرقه . در بخش دوم اين مقاله به بررسی هر يک از آنان خواهيم پرداخت .

ذخيره سازی اطلاعات در VB.NET ( بخش دوم )
در بخش اول اين مقاله به جايگاه متغيرها در يک زبان برنامه نويسی اشاره و با نحوه تعريف آنان در VB.NET آشنا شديم . در بخش دوم اين مقاله به بررسی انواع نوع های ساده در VB.NET خواهيم پرداخت .
انواع نوع های ساده ( Simple Data Types )
VB.NET دارای دوازده نوع داده متفاوت بوده که می توان آنان را به سه گروه عمده تقسيم نمود : نوع های عددی ، نوع های حرفی ( متنی ) و نوع های متفرقه . در ادامه به بررسی هر يک از گروه های فوق ، خواهيم پرداخت ( در اين مقاله نوع Object بررسی نخواهد شد و در مقالاتی جداگانه به اين نوع داده ، خواهيم پرداخت ) .
گروه اول : نوع های عددی
با توجه به تنوع گسترده نوع های عددی در اين گروه ، می توان هر گونه عددی را به يک متغير نسبت داد . مثلا” می توان متغيرهائی را ايجاد و به آنان اعداد صحيح ، اعداد کسری و يا اعداد اعشاری منفی را نسبت داد .
Dim IntegerNumber1 As Integer
Dim DecimalNumber2 As Decimal
Dim FloatingPointNumber3 As Float
IntegerNumber1 = 75
DecimalNumber2 = 3.14
FloatingPointNumber3 = -1.4E02

نوع های عددی ، يکی از انواع داده متداول در VB.NET بوده که خود به هفت نوع متفاوت تقسيم می گردند :
• Integer : برای تعريف متغيرهائی که دارای مقادير صحيح می باشند ، استفاده می گردد( ۳ ، ۱۲ ، ۵ – ) . متغيرهائی از اين نوع ، قادر به نگهداری مقادير صحيح بين ۲،۱۴۷،۴۸۳،۶۴۸ – تا ۲،۱۴۷،۴۸۳،۶۴۷ ، می باشند . برای اعداد خارج از محدوده فوق ، نوع long در نظر گرفته می شود.

• Byte : متغيرهائی از اين نوع ، قادر به نگهداری مقاديرصحيح بين ، ۰ تا ۲۵۵ ، می باشند . از نوع فوق به منظور انجام عمليات پايه و ساده رياضی استفاده می گردد . ( مثلا” شمارنده هائی در برنامه که مقدار آنان حداکثر ۲۵۵ می باشد) . برای ذخيره سازی اين نوع متغيرها صرفا” يک بايت حافظه در نظر گرفته می شود.
• Short : نوع فوق ، شکلی خاص از نوع Integer می باشد. متغيرهائی از اين نوع قادر به نگهداری محدوده کمتری از اعداد صحيح ( بين ۳۲،۷۶۸ – تا ۳۲،۷۶۷ ) در مقايسه با نوع Integer می باشند .
• Long : نوع فوق شباهت زيادی به نوع Integer داشته با اين تفاوت که امکان ذخيره سازی محدوده بيشتری از اعداد را فراهم می نمايد. يک متغير از نوع Long قادر به ذخيره سازی مقاديربين ۹،۲۲۳،۳۷۲،۰۳۶،۸۵۴،۷۷۵،۸۰۸ – تا ۹،۲۲۳،۳۷۲،۰۳۶،۸۵۴،۷۷۵،۸۰۷ ، می باشد .

• Single : متغيرهائی از اين نوع ، قادر به نگهداری اعداد اعشاری با دقت معمولی ودر محدوده زير می باشند :
محدوده نوع Single
-3.402823E38 to -1.401298E-45 اعداد منفی
۱٫۴۰۱۲۹۸E-45 to 3.402823E38 اعداد مثبت
• Double : متغيرهائی از اين نوع ، قادر به نگهداری اعداد اعشاری با دقت مضاعف و در محدوده زير می باشند :

محدوده نوع Double
-1.79769313486232E308 to -4.94065645841247E-324 اعداد منفی
۴٫۹۴۰۶۵۶۴۵۸۴۱۲۴۷E-324 to 1.79769313486232E2308 اعداد مثبت
• Decimal : متغيرهائی از اين نوع ، قادر به نگهداری اعداد اعشاری تا حداکثر بيست و هشت رقم اعشار می باشند.

محدوده نوع Decimal
+/- 79،۲۲۸،۱۶۲،۵۱۴،۲۶۴،۳۳۷،۵۹۳،۵۴۳،۹۵۰،۳۳۵ حداکثر: با لحاظ نمودن صفر رقم اعشار
+/- ۷٫۹۲۲۸۱۶۲۵۱۴۲۶۴۳۳۷۵۹۳۵۴۳۹۵۰۳۳۵ حداکثر: با لحاظ نمودن بيست و هشت رقم اعشار

گروه دوم : نوع های حرفی ( متنی )
برای ذخيره سازی محتويات متنی ، از دو نوع داده String و Char استفاده می شود:
• نوع String : متغيرهائی از اين نوع ، همه چيز را به عنوان text در نظر می گيرند ولو اين که مقدار مورد نظر شامل حروف و اعداد و يا صرفا” اعداد و يا تاريخ باشد . دستور زير متغيری از نوع string و با نام CityName را تعريف و در ادامه مقدار “Tehran” ، به آن نسبت داده می شود.

Dim CityName As String
CityName = “Tehran”

• همانگونه که قبلا” اشاره گرديد ، برای نسبت دهی يک مقدار به متغيرهائی از نوع string ، از کوتيشن استفاده می شود.انجام عمليات رياضی بر روی رشته ها ، مجاز نخواهد بود (حتی در صورتی که محتويات آنان عددی باشد) . مثلا” در صورتی که تصميم به جمع دو رشته “۱۲” و “۱۴” را با يکديگر داشته باشيم ، مقدار “۲۶” بدست نخواهد آمد. در چنين حالتی ، ماحصل جمع دو رشته مقدار “۱۴۱۲” ، خواهد بود . چراکه رشته Number2 با Number1 را جمع کرده ايم در صورتی که رشته Number1 با Number2 جمع شود ، مقدار ” ۱۲۱۴ ” را خواهيم داشت .

Dim Number1 As string
Dim Number2 As string
Dim Number3 As string
Number1 = “12”
Number2 = “14”

Number3 = Number2 + Number1 ‘ Result : “1412”
• نوع Char نوع فوق ، نسبت به نوع String متفاوت بوده و در آن text به عنوان يک عدد ، ذخيره می گردد. بدين ترتيب ، امکان ذخيره سازی صرفا” يک کاراکتر در يک متغير، فراهم می گردد. در چنين حالتی می توان يک عدد بين صفر تا ۶۵۵۳۵ را ذخيره نمود. در صورتی که قصد نمايش محتويات يک متغير از نوع char را داشته باشيم ، صرفنظر از نحوه ذخيره سازی ، يک کاراکتر text ، نمايش داده می شود . کد زير ، نحوه تعريف و نسبت دهی يک مقدار به متغيری از نوع char را نشان می دهد( حرف ‘C’ ، پس از کوتيشن ، نشاندهنده اين موضوع است که متغير از نوع Char می باشد) .
Dim Letter As Char
Letter = “Q”C ‘ This would be stored as 81

گروه سوم : نوع های متفرقه
دو نوع داده ديگر در VB.NET وجود دارد که می توان آنان را در اين گروه قرار داد :
• نوع Date : متغيرهائی از اين نوع ، قادر به نگهداری تاريخ و زمان می باشند . برای ذخيره تاريخ می بايست از فرمت mm/dd/yy استفاده گردد. مقدار نسبت داده شده به يک متغير از نوع Date توسط علائم ” # ” ، محصور می گردد . متغيرهائی از نوع Date ، قادر به ذخيره سازی تاريخ تا سال ۹۹۹۹ می باشند .
Dim Date1 As Date
Date1 = # 12/ 07 / 2004#
• از متغيرهای نوع Date می توان به منظور ذخيره سازی زمان نيز استفاده نمود :
Dim Time1 As Date
Time1 = #16:25:05#

• نوع Boolaen : متغيرهائی از اين نوع می توانند دارای مقدار True و يا False باشند . در VB.NET در صورتی که مقادير فوق را به نوع صحيح تبديل نمائيم ، مقادير ۱ – و صفر را خواهيم داشت . زمانی که ساير نوع های عددی را به مقادير Boolaen تبديل می نمائيم ، مقدار صفر به False و ساير مقادير به True تبديل خواهند شد . زمانی که مقادير Boolean را به ساير نوع های داده تبديل می کنيم ، False مقدار صفر و True مقدار يک را دارا خواهد بود. علت اين که در مواردی که True تبديل به نوع صحيح در VB.NET می گردد مقدار ۱ – و زمانی که به ساير نوع ها تبديل می گردد ، مقدار ۱ + را دارا می باشد ، به حمايت از کدهای نوشته شده قبلی در ويژوال بيسيک برمی گردد .
Boolean Value Numeric value
True
False -1 / +1
0
• از متغيرهای Boolean ، می توان به منظور نگهداری وضعيت يک متغير استفاده نمود. در صورتی که مقدار اينچنين متغيرهائی True نباشد ، قطعا” مقدار آنان False خواهد بود. بدين ترتيب می توان از اين نوع متغيرها در موارد متعدد و متناسب با شرايط موجود استفاده و پس از اتخاذ تصميم ، عمليات مورد نظر را دنبال نمود.
Dim Done As Boolean
Done = False
If Done = False then

Else

• مقدار False و يا True ، نمی بايست بين کوتيشن قرار داده شوند .
نامگذاری متغيرها
بهترين حالت برای نامگذاری يک متغير ، در نظر گرفتن نامی است که نشاندهنده وظيفه يک متغير در برنامه باشد. در صورتی که اسامی متغيرها به درستی انتخاب گردند ، خوانائی برنامه و در نهايـت نگهداری و اعمال تغييرات در آينده نيز راحتر خواهد بود . پيشنهاد می گردد ، اسامی متغيرها به صورت تشريحی در نظر گرفته شود، حتی اگر اين کار باعث طولانی تر شدن اسامی می گردد .
برای انتخاب نام يک متغير ، موارد زير پيشنهاد می گردد :
• استفاده از اسامی نظير DateStart و يا DateEnd بمراتب بهتر از اسامی StartDate و يا EndDate می باشد ، چراکه اسامی فوق در صورت جستجوی متغيرها بر اساس حروف الفبائی، به دنبال هم نمايش داده می شوند .

• متغيرهائی نظير Price ،Name و Number گيج کننده می باشند . چراکه معمولا” در برنامه ها بيش از يک مورد از آنان وجود دارد نظير : NameFirst ,NameLast, PriceBuy و PriceSell .
• استفاده از اسامی مشابه نوع داده ها ، مجاز نمی باشد . مثلا” تعريف متغيری با نام Integer ، مجاز نخواهد بود .
• برای نامگذاری متغيرها از اسامی خلاصه شده ای که اقتباس شده از کلمات متفاوتی می باشند، استفاده نگردد . مثلا” استفاده از متغيری با نام FDOM که اقتباس شده از کلمات First Day Of Month می باشد ، يک انتخاب مناسب نخواهد بود ، چراکه FDOM می تواند مخفف کلمات متعددی باشد .

• در اکثر زبان های برنامه نويسی انتخاب يک نام برای متغير تابع مجموعه مقررات و محدوديت هائی است . در VB.NET تمامی متغيرها می بايست با يک حرف شروع شده و نمی بايست نام در نظر گرفته شده شامل نقطه و يا فضای خالی باشد . پيشنهاد می گردد به منظور افزايش خوانائی يک برنامه، صرفا” از علامت Underscore ( _ ) به همراه نام يک متغير استفاده گردد .
• VB.NET نسبت به حروف بزرگ و کوچک حساس نمی باشد . مثلا” متغيرهائی با نام counter و COUNTER مشابه در نظر گرفته خواهند شد .برخی از زبان های برنامه نويسی نظير سی شارپ و يا Jscript.NET ، نسبت به حروف بزرگ و کوچک حساس بوده و متغيرهائی با نام counter و COUNTER ، به عنوان دو متغير جداگانه در نظر گرفته می شوند .