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

تبلیغات کلیکی - افزایش رتبه گوگل

اگهی رایگان

پروژه تقويم ( مبدل تاريخ شمسي به ميلادي و برعكس)


کد محصول : 10001038 نوع فایل : word تعداد صفحات : 56 صفحه قیمت محصول : 7000 تومان تعداد بازدید 933

فهرست مطالب و صفحات نخست


تقويم ( مبدل تاريخ شمسي به ميلادي و برعكس)

 
فهرست مطالب

 عنوان                                         صفحه
مقدمه     1
فصل اول     3
1. برنامه نويسي مبتني بر ويندوز در مقايسه با برنامه نويسي مبتني بر DOS    4
2. تاريخچه ويژوال بيسيك     7
فصل دوم     11
1. مفهوم شي ء    12
2. خصوصيات يك شي ء    12
3. آشنايي با متدها    14
4. احضار متدها    15
5. مفهوم پويايي متدها    16
6. رويدادها     16
7. مفهوم برنامه نويسي رويداد گرا    17
8. احضار نمودن رويدادها     18
9. رويدادهاي بازگشتي و اجتناب از آنها    19
10. برخورد با رويدادهاي سيستم     23
فصل سوم     24
1. ثابت، متغير و آرايه‌ها (Constant, Variable and Array)     25
2. انواع داده اي در Visual Basic. NET    29
3. چند راهنمايي    31
4. زمان رايج زمان اجرا (CLR)    34
5. آشنايي با زبان ميانجي مايكروسافت (IL)    36
6. زبان ماشين     37
7. كار با فضاهاي نام     39
8. فضاهاي نام رايج مورد استفاده     39
9. سيستم نوع رايج     41
فصل چهارم     43
توضيحاتي راجع به برنامه     44

مقدمه
یک برنامه کامپیوتری از مجموعه ای دستور العمل که نوع و نحوه انجام یک فعالیت را برای کامپیوتر مشخص می نمایند تشکیل می گردد دستور العمل های نوشته شده به عنوان نمونه ممکن است به کامپیوتر اعلام نمایند که تعدادی از اعداد را با یکدیگر جمع و یا دو عدد را با یکدیگر مقایسه و بر اساس نتیجه بدست آمده ، اتخاذ تصمیم نماید دستور العمل های نوشته شده صرفاً برای کامپیوتر قابل فهم و اجرا خواهند بود.
کامپیوتر دستورالعمل های نوشته شده را اجراء و ماحصل آن رسیدن به اهدافی خواهد بود که بر اساس آن برنامه طراحی و پیاده سازی شده است. دستورالعمل ها، میبایست با استفاده از یکی از زبانهای برنامه نویسی نوشته شده (کدینگ) و در ادامه در اختیار کامپیوتر قرار داده شوند.
زبانهای برنامه نویسی متعددی نظیر : فرترن ، بیسیک ، کوبال ، پاسکال ، C ، جاوا ، ویژوال بیسیک و ... وجود دارند.
VB.NET زبانی است که میتوان نحوه نیل به یک خواسته را به کمک آن به صورت شفاف مشخص کرد و کامپیوتر با دنبال نمودن مراحل مشخص شده، خواسته مورد نظر را محقق نماید. با استفاده از VB.NET ، می توان محصولاتی را ایجاد نمود که زمینه استفاده از آنان در محیط ویندوز ، شبکه و اینترنت وجود خواهد داشت.
VB.NET یکی از زبانهای حمایت شده در دات نت می باشد . با استفاده از زبان فوق علاوه بر اینکه می توان برنامه های مبتنی بر ویندوز را پیاده سازی نمود ، امکان استفاده از آن به عنوان زبان مورد نظر در زمان ایجاد برنامه های مبتنی بر وب که از تکنولوژی ASP.NET استفاده می نمایند ، نیز وجود خواهد داشت.
 
فصل اول
 
برنامه نویسی مبتنی بر ویندوز در مقایسه با برنامه نویسی مبتنی بر DOS
 برنامه نویسی مبتنی بر ویندوز دارای تفاوتهای عمده ای نسبت به برنامه نویسی سنتی در محیط DOS است برنامه های DOS ، مسیری دقیق و مشخص را از ابتدا تا پایان دنبال می نمایند . رویکرد فوق ، باعث بروز محدودیت هایی در رابطه با عملکرد برنامه ها از یک طرف و تحمیل محدودیت هایی به کاربران در طی نمودن مسیر مشخص شده از طرف دیگر می گردد .  از زاویه ای خاص میتوان عملکرد یک برنامه مبتنی بر DOS را مشابه قدم زدن در یک راهرو (سالن) ، در نظر گرفت . به منظور رسیدن به نقطه انتهایی سالن ، میباست طول سالن را طی نمود در این راستا از موانع متعدد موجود در مسیر می بایست عبور کرد تا سرانجام به مقصد مورد نظر رسید  ، در زمان پیمودن مسیر صرفاً امکان بازنمودن درب های خاصی وجود خواهد داشت . ویندوز دنیای جدیدی از برنامه نویسی  مبتنی بر "رویداد" را ایجاد نموده است. کلیک نمودن موس ، تغییر اندازه پنجره ، تغییر محتویات یک Textbox ، نمونه های از یک رویداد می باشند . کدهای نوشته شده ، نحوه برخورد با یک رویداد را مشخص می نمایند . برای رسیدن به انتهای یک سالن کافی است بر روی "انتهای سالن" کلیلک نموده و دیگر ضرورتی به پیمودن تمامی مسیر تا رسیدن به انتهای سالن نخواهد بود.
در صورتی که به انتهای سالن رسیده باشیم و متوجه گردیم که این مکان محلی نیست که انتظار آن را داشته ایم بسادگی میتوان مقصد جدیدی را برای خود انتخاب ، بدون اینکه ضرورتی به برگشت در نقطه آغازین مسیر وجود داشته باشد . برنامه نوشته شده عکس العمل های لازم در ارتباط با حرکت شما را به همراه عملیات مربوطه بمنظور تکمیل فعالیت های مورد نظر انجام خواهد داد . با استفاده از VB.NET  ، می توان کدهای لازم بمنظور ارائه عکس العمل لازم در زمان تحقق یک رویداد را نوشت . در این راستا ، برنامه نویسان می توانند کدهای لازم در رابطه با رویدادهایی که امکان تحقق آنها وجود دارد را نوشته تا در زمان بروز رویداد مورد نظر عکس العمل لازم از طرف برنامه صورت پذیرد . در این زمینه می توان از نوشتن کدهای دیگر بمنظور برخورد با رویدادهای غیر ضروری ، صرفنظر کرد . مثلا ویندوز قادر به تشخیص رویداد "کلیک" از "کلیک مضاعف" است ، این بدان معنی است که اگر می خواهید برنامه مورد نظر شما ، عکس العمل لازم در ارتباط با رویداد "کلیک" را داشته باشد ، می بایست صرفاً کد مربوط به رویداد "کلیک"  نوشته گردد .
در دنیای برنامه نویسی DOS کاربر عکس العمل لازم را نسبت به برنامه انجام می دهد در صورتیکه در ویندوز ، برنامه ها عکس العمل لازم را با توجه به رفتار کاربران ، انجام خواهند داد.
یکی دیگر از مزایای مهم برنامه های ویندوز ، عدم وابستگی برنامه ها به یک سخت افزار خاص است . ویندوز تمهیدات لازم در خصوص ارتباط با سخت افزار را پیش بینی و برنامه نویسان نیاز به آگاهی از نحوه عملکرد یک دستگاه سخت افزاری خاص بمنظور استفاده از آن ، نخواهند داشت . مثلا برنامه نویسان ضرورتی به آگاهی از نحوه عملکرد هر نوع چاپگر لیزری ، بمنظور ایجاد خروجی مورد نظر خود در برنامه ها ، نخواهند داشت . ویندوز امکانات لازم در این خصوص را از طریق ارائه روتین های عمومی که با درایورهای مورد نظر مرتبط میگردند ، فراهم مینمایند شاید همین موضوع دلیل موفقیت ویندوز باشد
روتین های عمومی اصطلاحا ً
Application Programming Interface Windows (API) 
نامیده می شوند .
تاریخچه ویژوال بیسیک
قبل از معرفی ویژوال بیسیک در سال 1991 ، پیاده کنندگان نرم افزار مجبور به تسلط و مهارت در زمینه استفاده از C++ بهمراه موارد پیچیده ای در این خصوص بودند . بدین ترتیب ، صرفاً افراد خاص آموزش دیده ، قادر به خلق نرم افزار های قدرتمند بمنظور اجراء در محیط ویندوز بودند . ویژوال بیسیک ، محدودیت فوق را تغییر و می توان این ادعا را داشت که امروزه خطوط زیادی از برنامه های نوشته شده با استفاده از ویژوال بیسیک کد شده است . ویژوال بیسیک ظاهر برنامه نویسی تحت ویندوز را با حذف عملیات اضافی برای نوشتن کدهای لازم جهت طراحی بخش رابط کاربر (UI) ، تغییر داده است . در این راستا زمانی که ، بخش رابط کاربر ، ترسیم می گردد ، برنامه نویس می تواند کدهای لازم بمنظور انجام عکس العمل مناسب در رابطه با رویدادها را به آن اضافه نماید . زمانیکه مایکروسافت نسخه شماره سه ویژوال بیسیک را ارائه نمود ، مجدداً دنیای برنامه نویسی با تغییر مهمّی مواجه گردید . در این راستا امکانات مناسبی برای نوشتن برنامه های مبتنی بر بانک های اطلاعاتی ، در اختیار برنامه نویسان قرار گرفت . مایکروسافت بدین منظور محصول جدیدی به نام Data Access Objects (DAO) را ارائه نمود . برنامه نویسان با استفاده از DAO ، امکان انجام عملیات متفاوت در رابطه با داده ها را ، بدست آوردند . نسخه های شماره چهار و پنج ، قابلیت های نسخه سه را افزایش و این امکان را برای پیاده کنندگان نرم افزار فراهم نمود تا برنامه های خود را جهت اجرا در محیط ویندوز 95 ، طراحی و پیاده سازی نمایند . در این زمینه برنامه نویسان قادر به نوشتن کدهایی گردیدند که امکان استفاده از آنان توسط سایر پیاده کنندگان نرم افزار که از زبانی دیگر استفاده می کردند ، فراهم گردید . نسخه شماره شش ویژوال بیسیک ، روش جدیدی به منظور دستیابی به بانکهای اطلاعاتی را ارائه نمود : ActiveX Data Objects (ADO) .
یکی از اهداف اولیه طراحی ADO ، امکان دستیابی به بانک های اطلاعاتی برای پیاده کنندگان برنامه های مبتنی بر وب است که از تکنولوژی ASP ، استفاده می نمایند .
همزمان باارائه جدیدترین نسخه ویژوال بیسیک که VB.NET نامیده میشود ، بسیاری از محدودیت های مرتبط با ویژوال بیسیک برطرف گردید در گذشته ویژوال بیسیک با انتقادات فراوان منجمله عدم وجود امکانات مناسب در مقایسه با جاوا و یا C++ ، مواجه بود و بسیاری آن را نظیر یک اسباب بازی در دنیای وسیع زبان های برنامه نویسی می پنداشتند . VB.NET با غلبه بر مشکلات نسخه های پیشین ، توانسته است در مدت زمان کوتاهی به عنوان یک ابزار پیاده سازی بسیار قدرتمند مطرح و گزینه ای مناسب برای برنامه نویسان در تمامی سطوح باشد
ویژوال بیسیک دات نت بر عکس نگارشهای قبلی خودش یک زبان شیءگرای (Object Oriented) واقعی است . هر چیزی که در ویژوال بیسیک استفاده میشود یک شیء است به عنوان مثال فرم ها نیز مانند کنترلهایی که روی آنها قرار میگیرند شیء هستند . تقریبا ً هریک از عناصر پروژه ویژوال بیسیک ، یک شیء به حساب می آیند و متعلق به مجموعه ای (Collection) از اشیاء هستند ، تمامی اشیا دارای ویژگی (همان خصوصیات) ، بعضی دارای متد و بیشتر آنها دارای رویداد هستند .
ويژوال بيسيك توسعه يافته BASIC مي باشد. BASIC توسط پروفسور Thomas Kurtz, John kemeny از كالج Dartmouth براي نوشتن برنامه هاي ساده ايجاد شد و اين طراحي از اواسط دهه 1960 آغاز گرديد.
هدف از BASIC اوليه آموزش برنامه نويسي بود. BASIC توسط انواع متفاوتي از كامپيوترها مورد استفاده قرار گرفت و سرمشق ساير زبانها شد. با توسعه واسط گرافيكي كاربر (GUI ) توسط ميكروسافت، در اواخر دهه 1980 و اوايل 1990 BASIC تكامل تدريجي خود را به سوي ويژوال بيسيك انجام داده بود كه توسط گروه مايكروسافت در سال 1991 انجام پذيرفت . در زمانيكه ويژوال بيسيك در مرحله ظهور بود، توسعه برمامه هاي كاربردي تحت ويندوز ميكروسافت عملي طاقت فرسا بود. با آمدن ويژوال بيسيك ايجاد برنامه هاي كابردي تحت ويندوز بسيار آسان شد. از سال 1991 تاكنون شش نوع از ويژوال بيسيك روانه بازار شده است و آخرين نوع آن ويژوال بيسيك 6 مي باشد كه در سپتامبر 1998 روانه بازار گرديده است.
 
فصل دوم
 
مفهوم شیء
برنامه نویسی شیءگرا مدت زمانی است که سر زبانها افتاده است اما سوال اینجاست که یک شیء دقیقا ً چیست؟ اگر بخواهیم روشن ودقیق بگوییم ، یک ساختار برنامه نویسی است که داده ها و عملیات ، آن را به صورت یک عنصر مجزا کپسوله کرده است تنها راه دسترسی عمومی به آن از طریق رابطهای ساختار برنامه نویسی (خصوصیات ، متدها ، رویدادها) میسر میگردند ، در حقیقت جواب این سوال ممکن است کمی ابهام آمیز باشد زیرا انواع اشیاء مختلفی وجود دارند و روز به روز به تعداد آنها افزوده می شود ، هرچند که تمامی اشیاء مشخصه های خاصی از قبیل خصوصیات و متدها دارند . رایج ترین اشیاء مورد استفاده در ویژوال بیسیک ، فرم ها و کنترل ها هستند.
خصوصیات یک شیء
اشیاء برای تعیین و مشخص کردن حالت شیء دارای ویژگی هایی می باشند که این ویژگی ها را خصوصیات شیء می نامیم . درحقیقت هر شیء مجموعه ی خاصی از خصوصیت ها را به نمایش میگذارد ، اما هر شیء مجموعه خصوصیات یکسانی تولید نمی کند . برای روشن شدن این مطلب از مثال حیوان استفاده می کنیم ؛ تصور کنید که شما یک شیء دارید و آن شیء یک سگ است ، این سگ دارای مجموعه خصوصیات خاصی میباشد که بین تمام سگ ها متداول است ، این خصوصیات می تواند شامل نام سگ ، رنگ موی آن و حتی تعداد پاهای آن باشد . تمامی سگها این خصوصیات یکسان را دارند اگرچه هر سگی مقدار خاص خود را برای این خصوصیات دارد .
خصوصیت هر شیء در VB.NET در پنجره ی Properties قرار دارد و این پنجره فقط در زمان طراحی در دسترس است و فقط به منظور ویرایش خصوصیات فرم ها و کنترل ها به کار گرفته میشود . بیشتر خواندن و تغییر خصوصیاتی که شما انجام خواهید داد مربوط به کدهای ویژوال بیسیک است و به استفاده از پنجره ی Propertirs هیچ ارتباطی ندارد . وقتب که در برنامه به خصوصیات اشاره میکنید ابتدا نام شیء را می آورید و سپس بعد از آن یک نقطه (.) می گذارید و بعد نام خصوصیت را می نویسید مانند ترکیب نحوی زیر :
{ObjectName} . {Property}
وقتی که به یک خصوصیت در سمت چپ علامت مساوی اشاره می کنید ، در حقیقت به آن مقدار می دهید ؛ و وقتی که به یک خصوصیت در سمت راست علامت مساوی اشاره می کنید ، مقدار آن را بدست می آورید (می خوانید) . در ابتدای استفاده از بیسیک برای تخصیص مقدار از واژه ی Let استفاده می شد .
بعضی خصوصیات فقط قابل خواندن هستند و نمیتوان آنها را تغییر داد فرض کنید که خصوصیت Sex ، مشخص کننده جنسیت سگ باشد . این غیر ممکن است که  سگ ماده را بتوان به سگ نر تبدیل کرد (وبرعکس) زیرا خصوصیت Sex را فقط می توان بدست آورد و نمی توان آن را تغییر داد بنابراین یک خصوصیتِ فقط خواندنی (ReadOnly) است 
توجه : بهترین راه تشخیص اینکه کدامیک از خصوصیات شیء فقط خواندنی می باشند این است که برای شیء مورد نظر از راهنمای حین کار (On-line) ، درخواست کمک کنید
آشنایی با متدها
علاوه بر خصوصیات اشیاء دارای متد (Method) نیز هستند . متدها عملیاتی هستند که شیء در مقایسه با ویژگی هایش می تواند انجام دهد ، برای فهمیدن این موضوع شیء حیوان را در نظر بگیرید . یک  سگ مجموعه کارهای خاصی می تواند انجام دهد این کارها (مانند پارس کردن و دم تکان دادن) را در ویژوال بیسیک متد می گویند

 احضار متدها
متدها را به شکل توابع در نظر بگیرید (که البته دقیقا ً مثل آنها هستند) ؛ وقتی که یک متد را احضار (Invoke) می کنید کد اجرا می شود . می توانید داده ها را به متد منتقل کنید و متد ها ممکن است مقدار برگردانند اگرچه نیازی نیست تا یک متد ، پارامتری قبول کند (داده ای که توسط فراخوانی کد منتقل می شود) و یا یک مقدار بازگرداند ؛ اما بیشتر متدها به سادگی یک عمل را در برنامه انجام می دهند . احضار (فراخوانی) یک متد ، مانند اشاره به مقدار یک خصوصیت است؛ ابتدا به نام شیء اشاره می کنید و سپس یک علامت نقطه (.) و بعد نام متد را وارد می نمایید
بدین شکل :
{ObjectName}.{Method}
احضار متدها ساده می باشد ؛ هنر اصلی آن است که بدانید یک شیء چه متدهایی را پشتیبانی می کند و یک متد خاص را چه وقت استفاده کنید
مفهوم پویایی متدها
خصوصیت ها و متدها دست در دست هم دارند و ممکن است یک متد خاص به علت یک یا تعدادی از مقادیر خصوصیت ، قابل استفاده نباشد . به عنوان مثال ، اگر خصوصیت NumberOfLegs مربوط به Bruno را مساوی صفر قرار دهید ، متدهای  Walk و  Fetch عملاً از بین می روند و اگر دوباره خصوصیت NumberOfLegs را برار چهار قرار دهید ، می توانید از متدهای Walk و Fetch استفاده کنید .
رویدادها
ایجاد یک رابط جذاب برای برنامه های کاربردی ، با استفاده از ابزارهای مجتمع ویژوال بیسیک کار تقریباً ساده ای است . می توانید فرم های زیبایی ایجاد ایجاد کنید که دارای دکمه هایی برای کلیک نمودن ، کادرهای متنی برای تایپ اطلاعات ، کادرهای تصویر برای نمایش عکسها و خیلی از عناصر جذاب و سازنده ی دیگری باشد که کاربران می توانند با آنها به محاوره بپردازند . علاوه بر طراحی یک رابط ، باید به برنامه خود این قدرت را بدهید تا هم در رابطه با کاربر بداند باید چه کاری انجام دهد و هم در مورد برخورد ویندوز با آن ، عملیات مربوطه را انجام دهد . این کار توسط رویدادها (Events) انجام میشود به این نوع برنامه نویسی برنامه نویسی رویدادگرا (Event-driven Programming) می گویند
مفهوم برنامه نویسی رویدادگرا
درزبانهای برنامه نویسی قدیمی ، زبانهای رویه ای ، (procedural) ، برنامه خودش به طور کامل می گوید که چه کدی در چه زمانی اجرا شود . همچنین وقتی که برنامه ای را اجرا می کنید اولین خط برنامه اجرا می شود و بعد برنامه به شکل از پیش تعیین شده ای ادامه پیدا میکند . اجرای برنامه شاید در بعضی وقتها منشعب گشته یا در حلقه بیفتد ، اما مسیر اجرا کاملا توسط برنامه کنترل میگردد . این اغلب بدین معناست که برنامه در پاسخ به کاربر محدود می باشد . به عنوان مثال برنامه ممکن است انتظار داشته باشد که کاربر به یک ترتیب از پیش تعیین شده ای در کنترل های روی صفحه متن وارد کند (برخلاف ویندوز) ، در حالی که یک کاربر با قسمت های مختلفی از رابط در تماس است و هر ترتیبی را که بخواهد می تواند انجام دهد ویژوال بیسیک نیز مانند سایذ زبانهای برنامه نویسی از مدل برنامه نویسی رویدادگرا استفاده می کند برنامه های رویدادگرا مانند برنامه های رویه ای محدودیت ندارند . به جای اجرای از بالا به پایین زبان های رویه ای ، در زبان های رویدادگرا قسمت های منطقی کد وجود دارد که در رویدادها قرار داده شده اند . هیچ ترتیب از پیش تعیین شده ای برای اجرای رویدادها وجود ندارد و اغلب کاربر می تواند با احضار رویدادهای خاص (از قبیل کلیک نمودن یک دکمه) در یک برنامه رویدادگرا ، بر نحوه ی اجرای کد ، کنترل کامل داشته باشد یک رویداد به همراه کدش را یک زیربرنامه رویداد می گویند .
احضار نمودن رویدادها
رویدادها از یک نظر نوع خاصی از متدها می باشند در واقع رویدادها متدهایی هستند که می توانند به راه های مختلفی فراخوانی شوند ، معمولاً توسط محاوره ی کاربر با چیزی روی فرم یا توسط خود ویندوز این کار انجام میگیرد (به جای فراخوانی توسط یک دستور در برنامه)
انواع زیادی رویداد و راه های مختلفی برای احضار(Trigger) آنها وجود دارد
یک رویداد میتواند به چهار راه زیر احضار گردد :
1.    کاربران میتوانند از طریق محاوره با برنامه ی شما رویدادها را احضار کنند
2.    بر حسب نیاز ، اشیاء میتوانند رویدادهای خود را احضار کنند
3.    سیستم عامل (هر نگارشی از ویندوز که کاربر از آن استفاده میکند) میتواند رویدادها را احضار کند
4.    میتوانید رویدادها را با فراخوانی آنهاتوسط کد ویژوال بیسیک احضار کنید
رویدادهای بازگشتی و اجتناب از آنها
رویدادی که متنواباً خودش را احضار (فراخوانی) میکند ، رویداد بازگشتی نامیده می شود به عنوان مثال یک حلقه ی بی پایان باعث ایجاد رویداد بازگشتی میشود وقتی که ویندوز خطای StackOverFlow را اعلام میکند ، رویدادهای بازگشتی متوقف می شوند و نشان میدهد دیگر منبعی وجود ندارد که ویندوز بتواند عملیات بازگشتی خود را ادامه دهد .
نکته : وقتی که با خطای StackOverFlow روبرو میشوید ، باید به دنبال یک رویداد بازگشتی به عنوان مقصر بگردید.
رویدادهای یازگشتی می توانند شامل بیش از یک رویداد در حلقه باشند . به عنوان مثال اگر رویداد A رویداد B را احضار کند ، که آن نیز رویداد A را احضار می کند می توانید یک بازگشت با دو رویداد داشته باشید ، بازگشت می تواند حتی برای مجموعه ای از رویدادها و نه فقط یک یا دو رویداد ، به وجود آید
در تعریف رویداد به عناصر داخل پرانتز ، پارامتر می گویند یک پارامتر رویداد ، متغیری است که توسط ویژوال بیسیک ایجاد و مقداردهی می شود . این متغیرهای پارامتری ، برای گرفتن (بعضی اوقات برای قرار دادن) اطلاعات مناسب یک رویداد به کار می روند . پارامترهای مختلف داخل یک زیر برنامه رویداد ، همیشه با علامت کاما از هم جدا می شوند . یک پارامتر شامل داده هایی است که مربوط به رویداد می باشد. این داده ها ممکن است یک عدد ، متن یا یک شیء یاد هر چیز دیگر باشد. به عنوان نمونه رویداد MouseDown دو پارامتر دارد . وقتی که زیر برنامه رویداد احضار شود ، ویژوال بیسیک به طور خودکار متغیرهای پارامتری را ایجاد می کند و مقادیری را برای استفاده در این یکبار اجرای زیر برنامه رویداد به آنها نسبت می دهد؛ بار دیگر که زیر برنامه رویداد اتفاق افتاد ، مقادیر این پارامترها به حالت اولیه برمی گردند. 
پارامترهای رویداد MouseDown عبارتند از :

ByVal Sender As System.Object
و
ByVal e As System.WinForms.MouseEventArgs

متنی که بعد از ByVal  امده است نام پارامتر است و رشته ی بعد از لغت As  نشان دهنده ی نوع داده ای است که پرامتر شامل می شود. اولین پارامتر (Sender) یک شیء عمومی را در خود نگه می دارد. پارامترهای شیئی میتوانند هر نوع شیئی که ویژوال بیسیک پشتیبانی میکند ، باشند این پارامر یک ارجاع به کنترلی که علت به وجود آمدن رویداد است را برمی گرداند اغلب بسیار خوب است که به جای ارجاع یک کنترل توسط نام از پارامتر Sender استفاده کنید زیرا در این حالت اگر نام کنترل را عوض کنید نیازی به تغییر برنامه خود ندارید همچنین با اشاره به شیء Sender برنامه قابل انتقال میگردد. می توانید آن را کپی کنید و در داخل رویداد یک کنترل دیگر از همان نوع بچسبانید بدون آنکه نیازی به تغییر داشته باشید.
پارامتر e جایی است که عمل واقعی همراه رویداد MouseDown وجود دارد پارامتر e همچنین یک شیء در خود نگه می دارد که در این مثال شیء مورد نظر یک System.WinForms.MouseEventArgs است.
نکته جالب در مورد اشیاء این است که شما احتیاجی ندارید  تا تمام جزییات آن را در حافظه ی خود نگه دارید . به عنوان مثال نیازی نیست که مقادیر برگشتی هر نوع دکمه ای را به خاطر بسپارید فقط به خاطر داشته باشید پارامتر e شامل اطلاعاتی در مورد رویداد است . وقتی که e را تایپ و سپس نقطه (.) را وارد می کنید ، فهرست کشویی هوشمندی ظاهر می شود و عضوهای e را که یکی از آنها Button است ، نمایش می دهد. اگر گزینه Button را انتخاب کرده و سپس یک فاصله قرار دهید و بعد علامت مساوی بگذارید ، فهرست کشویی دیگری خواهید دید که به شما مقادیر ممکن Button را نشان می دهد .
 
برخورد با رویدادهای سیستم
در نگارشهای ویژوال بیسیک قبل از دات نت رویدادهایی بنام رویدادهای یتیم وجود داشتند، همانطور که می دانید ، نام یک زیر برنامه رویداد توسط نام کنترل به همراه یک علامت زیرخط و بعد از آن نام رویداد ، تعریف می شود (مانند txtAddress_TextChange). وقتی که نام کنترل را عوض می کنید ، ویژوال بیسیک تعریف رویداد کنترل را تغییر نمی دهد تا طبق نام جدید شود ، بنابراین زیربرنامه ی رویداد نسبت به کنترل یتیم می شود. برای اصلاح این مطلب ، باید یا نام کنترل را به همان نامی که رویدادش ایجاد شده است تغییر دهید و یا تعریف زیر برنامه های رویدادی تیم را عوض کنید تا با نام جدید کنترل سازگار شوند.   
 
فصل سوم
 
ثابت ، متغیر و آرایه (Constant , Variable and Array)
وقتی که زیر برنامه های ویژوای بیسیک را می نویسید ، به طور مکرر احتیاج دارید تا مقادبر مختلفی از اطلاعات را ذخیره و بازیابی کنید. این قبیل داده ها را می توانید به عنوان ثابتها ، متغیرها  یا آرایه ها ذخیره کنید
ثابتها ، مقادیر نامگذاری شده ای هستند که شما در زمان طراحی تعریف می کنید اما میتوانید هروقت که نیاز داشتید به آنها اشاره کنید برای تعریف ثابت یک مقدار خاص را در زمان طراحی برای یک ثابت تعریف کنید و به این نکته توجه داشته باشید که آن مقدار هیچ وقت در طول حیات برنامه تغییر نخواهد کرد ثابتها دارای فواید زیر هستند :
•    حذف یا کاهش مشکلات مربوط به ورود داده ها - خیلی ساده تر است هروقت که به عدد pi نیاز دارید از ثابت c_pi به جای وارد کردن عدد 3/14159265358979 استفاده کنید. کامپایلر ثابتهای معرفی نشده یا اشتباه تایپ شده را تشخیص می دهد ولی اهمیتی به یک مقدار لیترال که وارد میکنید نمی دهد.
•    به روز رسانی کد آسانتر است -  با استفاده از ثابت اگر تغییری در عدد استفاده شده حاصل شود فقط کافیست یکبار مقدار را تغییر دهیم (در تعریف ثابت) کل برنامه از مقدار جدید استفاده می کند
•    خواندن کد راحت تر است – ثابتهای خوب نامگذاری شده به برنامه شفافیت می دهند
ترکیب نحوی تعریف یک ثابت به شکل زیر است :
Const name As datatype = value
نکته: ثابتها فقط می توانند در حوزه ای که تعریف شده اند مورد ارجاع قرار گیرند
متغیرها حاملهای در برگیرنده مقادیری هستند که در جریان یک برنامه کاربردی می توانند تغییر کنند . برنامه نویسی بدون آنها ، اگر نگوییم غیرممکن ، اما به سختی امکان پذیر است . متغیرها به عبارتی مانند صندوقهای ذخیره هستند ، می توانید داده ها را در یک متغیر قرار داده یا هر وقت که به آنها نیاز داشتید بازیابی کنید. وقتی که در برنامه به متغیرها ارجاع می شود ، مانند ثابتها عمل می کنند ، یعنی وقتی که برنامه اجرا می شود ویژوال بیسیک مقدار متغیر را به جای نام متغیر جایگزین می کند این عمل ذدر زمان ترجمه انجام نمی گیرد بلکه در زمان اجرا و وقتی که به متغیر ارجاع می شود صورت می پذیرد. دلیل آن این است که مقدار متغیر در هر لحظه ممکن است تغییر کند
عمل تعریف یک متغیر را اعلان کردن آن متغیر می گویند که در بیشتر مواقع با کلمه کلیدی Dim انجام می گردد
Dim variablename As datatype = initialvalue
 در ASP.NET متغیرها برخلاف ثابتها در چند لایه وجود دارند :
•    لایه اول لایه Application است . در اینجا در هر صفحه برنامه کاربردی ، همه متغیرها در دسترس همه کاربران قرار دارند . معمولا ً یک قطعه داده نسبتا ً کوچک که در معرض استفاده مکرر است ، همانند اطلاعات مربوط به ارتباط با بانک اطلاعاتی ، در این لایه ذخیره میشوند.
•    لایه دوم لایه Session است . در این لایه همه متغیرها در سرتاسر برنامه کاربردی یا تا برقرار بودن جلسه کاربر ، در دسترس یک کاربر بخصوص هستند .
•    لایه سوم و آخر ، لایه Page است . در اینجا همه متغیرهای تعریف شده در صفحه در سرتاسر آن صفحه در دسترس هستند . متغیرهای تعریف شده در یک صفحه ASP.NET از صفحه دیگر قابل دستیابی نیستند .
بعلاوه در زمان استفاده از Code-behind در صفحات ASP.NET ، در پیمانه های کلاس خود به متغیرهای سطح Procedure ، Private ، Public و Block دسترسی دارید . متغیرهای عمومی در کلاس هایی که در آنها ایجاد شده اند و نیز پیمانه های کلاس دیگر قابل دسترسی هستند . جلوی این متغیرها کلمه کلیدی Public قرار میگیرد . متغیرهای خصوصی تنها در دسترس توابع و روال های کلاسهایی هستند که در آنها تعریف شده اند . قبل از متغیرهای خصوصی کلمه کلیدی Private قرار میگیرند .
متغیر های سطح Block تنها در بلوکهای برنامه ایجاد کننده خود در دسترس می باشند . قبل از متغیر های سطح Procedure و Block کلمه کلیدی Dim قرار میگیرد .
آرایه ها مانند متغیرهای گروهی هستند که به شما اجازه می دهند تا مقادیر زیادی را در یک متغیر آرایه ای ذخیره کنید. در واقع آرایه نوع خاصی از متغیر است که دارای چند بعد می باشد آرایه ها نیز تقریباً مانند متغیرهای معمولی اعلان می شوند فقط با یک تفاوت قبل توجه ، این دستور را در نظر بگیرید :
Dim strMyArray(10) As String
این دستور خیلی مشابه دستور Dim متغیر رشته ای معمولی می باشد فقط با این تفاوت که عدد 10 در پرانتز اورده شده است عدد داخل پرانتز مشخص کننده تعداد عناشری است که در داخل آرایه قرار می گیرد آرایه ها هم می توانند تک بعدی باشند و هم چند بعدی

انواع داده ای در VisualBasic.NET
برای تعریف یک متغیر در ویژوال بییسک دات نت از عبارت Dim استفاده می شود . برای مثال جمله زیر یک متغیر جدید به نام myVar تعریف می کند
Dim myVar
هنگامی که یک متغیر مانند فوق بدون در نظر گرفتن نوع آن تعریف میشود ، آن متغیر به عنوان یک شیء (Object) در نظر گرفته می شود . یک متغیر از نوع شیء در دات نت می تواند شامل انواع داده از قبیل رشته ، عدد یا انواع پیچیده تر مانند کلاس باشد .
اغلب نیازی نیست که از متغیرهای از نوع شیء در برنامه استفاده شود چرا که این متغیرها باعث کاهش کارایی و سرعت برنامه میشوند . هنگامی که از یک متغیر از نوع شیء استفاده می شود ، نوع مناسب آن متغیر در زمان اجرا تشخیص داده می شود و این باعث کندی می شود . بنابراین بهتر است که نوع داده را از ابتدا مشخص کنیم . جهت مشخص نمودن نوع داده از کلمه کلیدی As استفاده می کنیم . به عنوان مثال یک متغیر از نوع رشته بصورت زیر تعریف میشود :
Dim myVar As String
پر کاربردترین انواع داده ای عبارتند از :
Integer , Decimal , Date , Boolean , String
دقت کنید که نوع داده ای Currency یا Money برای مقادیر پولی در نظر گرفته نشده است و شما میتوانید برای مقادیر پولی از نوع Decimal استفاده کنید.
انواع داده های ویژوال بیسیک
Boolean : جهت درست یا نادرست (True or False)
Byte : برای داده های عددی 0 تا  255  (تنها مقادیر مثبت)
Char : برای یک کاراکتر یونیکد (0 تا 65535)
Date : اطلاعات تاریخ و زمان
Decimal : اطلاعات عددی صحیح
Double : داده های عددی اعشاری
 : Single , Short , long , Integerداده های عددی صحیح
Object : متغیر حامل پیش فرض جهت نگهداری هر نوع شیء
String : رشته های حرفی (0 تا 2 میلیارد کاراکتر)
در نگارشهای قبلی ویژوال بیسیک و در VBScript همه متغیرها بطور پیش فرض از نوع داده Variant بودند . Variant  در VB.NET وجود ندارد و با نوع داده Object جایگزین شده است .
 


منابع :


طراحی سایت : سایت سازان