در بخش اول این مقاله به جایگاه متغیرها در یک زبان برنامه نویسی

در بخش اول این مقاله به جایگاه متغیرها در یک زبان برنامه نویسی اشاره و با نحوه تعریف آنان در  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 : برای تعریف متغیرهائی که دارای مقادیر صحیح می باشند ، استفاده می گردد( 3 ، 12 ، 5 - ) .  متغیرهائی از این نوع ، قادر به نگهداری مقادیر صحیح  بین  2،147،483،648 - تا 2،147،483،647  ، می باشند .  برای اعداد خارج از محدوده فوق ، نوع long  در نظر گرفته می شود.

  • Byte : متغیرهائی از این نوع ، قادر به نگهداری مقادیرصحیح بین ، 0 تا 255 ، می باشند . از نوع فوق به منظور انجام عملیات پایه و ساده ریاضی استفاده می گردد . ( مثلا" شمارنده هائی در برنامه که مقدار آنان حداکثر 255 می باشد) . برای ذخیره سازی این نوع متغیرها  صرفا" یک بایت حافظه در نظر گرفته می شود.

  • Short : نوع فوق ، شکلی خاص از نوع Integer می باشد. متغیرهائی از این نوع قادر به نگهداری محدوده کمتری از اعداد صحیح ( بین  32،768 - تا 32،767   )  در مقایسه با نوع Integer می باشند .

  • Long : نوع فوق شباهت زیادی به نوع Integer  داشته با این تفاوت که امکان ذخیره سازی محدوده بیشتری از اعداد را فراهم می نماید. یک متغیر از نوع Long قادر به ذخیره سازی مقادیربین  9،223،372،036،854،775،808 - تا  9،223،372،036،854،775،807 ، می باشد .

  • Single : متغیرهائی از این نوع ، قادر به نگهداری اعداد اعشاری با دقت معمولی ودر محدوده زیر می باشند : 

محدوده نوع Single

 -3.402823E38 to  -1.401298E-45

 اعداد  منفی

1.401298E-45  to   3.402823E38 اعداد  مثبت
  • Double : متغیرهائی از این نوع ، قادر به نگهداری اعداد اعشاری با دقت مضاعف و در محدوده زیر می باشند :

    محدوده نوع Double

    -1.79769313486232E308 to -4.94065645841247E-324

     اعداد  منفی

    4.94065645841247E-324 to 1.79769313486232E2308  اعداد  مثبت
  • Decimal : متغیرهائی از این نوع ، قادر به نگهداری اعداد اعشاری تا حداکثر بیست و هشت رقم اعشار می باشند.

    محدوده نوع Decimal

     +/- 79،228،162،514،264،337،593،543،950،335

    حداکثر: با لحاظ نمودن صفر رقم اعشار

    +/- 7.9228162514264337593543950335

    حداکثر: با لحاظ نمودن بیست و هشت رقم اعشار

گروه دوم : نوع های حرفی ( متنی )
برای ذخیره سازی محتویات متنی ، از دو نوع داده String و Char استفاده می شود:

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

    Dim CityName As String
    CityName = "Tehran"

    همانگونه که قبلا" اشاره گردید ، برای نسبت دهی یک مقدار به متغیرهائی از نوع string ، از کوتیشن استفاده می شود.انجام عملیات ریاضی بر روی رشته ها ، مجاز نخواهد بود (حتی در صورتی که محتویات آنان عددی باشد) . مثلا" در صورتی که تصمیم به جمع دو رشته "12" و "14" را با یکدیگر داشته باشیم ، مقدار  "26"  بدست نخواهد آمد. در چنین حالتی ، ماحصل جمع دو رشته مقدار  "1412" ، خواهد بود . چراکه رشته Number2 با Number1 را جمع کرده ایم در صورتی که رشته Number1 با Number2 جمع شود ، مقدار " 1214 " را خواهیم داشت .

Dim Number1 As string
Dim Number2 As string
Dim Number3 As string
Number1 = "12"
Number2 = "14"
Number3 = Number2 + Number1  ' Result :  "1412"

  •  نوع Char نوع فوق ، نسبت به نوع String متفاوت بوده و در آن  text به عنوان یک عدد ، ذخیره می گردد. بدین ترتیب ، امکان ذخیره سازی صرفا" یک کاراکتر در یک متغیر، فراهم می گردد. در چنین حالتی می توان یک عدد بین صفر تا 65535 را ذخیره نمود. در صورتی که قصد نمایش محتویات یک متغیر از نوع 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 ، قادر به ذخیره سازی تاریخ تا سال 9999 می باشند .

    Dim Date1 As Date
    Date1 = # 12/ 07 / 2004#

    از متغیرهای نوع Date می توان به منظور ذخیره سازی زمان نیز استفاده نمود :

    Dim Time1 As Date
    Time1 = #16:25:05#

  • نوع Boolaen : متغیرهائی از این نوع می توانند دارای مقدار True و یا False باشند . در VB.NET در صورتی که مقادیر فوق را به نوع صحیح تبدیل نمائیم ، مقادیر 1 - و صفر را خواهیم داشت . زمانی که سایر نوع های عددی را به مقادیر Boolaen تبدیل می نمائیم ، مقدار صفر به False و سایر مقادیر به True تبدیل خواهند شد . زمانی که مقادیر Boolean را به سایر نوع های داده تبدیل می کنیم ، False مقدار صفر و True مقدار یک را دارا خواهد بود. علت این که در مواردی که True تبدیل به نوع صحیح در VB.NET می گردد مقدار 1 - و زمانی که به سایر نوع ها تبدیل می گردد ، مقدار 1 + را دارا می باشد ، به حمایت از کدهای نوشته شده قبلی در ویژوال بیسیک برمی گردد .

    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 ، به عنوان دو متغیر جداگانه در نظر گرفته می شوند .

روشی برای نامگذاری متغیرها
در صورتی که دارای تعداد زیادی متغیر در یک برنامه باشیم ، می بایست از روش های خاصی به منظور آگاهی از نوع محتویات آنان ، استفاده کرد. در چنین مواردی می توان به بخش تعاریف متغیرها در برنامه مراجعه نمود و از نوع داده مربوط به هر یک از آنان آگاهی یافت . در مواردیکه هزاران متغیر در یک برنامه تعریف شده است ، منطقی نخواهد بود که برای آگاهی از نوع محتویات یک متغیر، لیست تمامی  متغیرها را بررسی نمود . در یک برنامه در برخی مواقع لازم است که نوع یک متغیر به نوع دیگر، تبدیل گردد، در چنین مواردی آگاهی از نوع یک متغیر کمک قابل توجهی را به برنامه نویس ارائه داده و از بروز خطاء در برنامه پیشگیری می نماید .بدین منظور می توان از مجموعه ای قواعد که به نوعی امروزه بین برنامه نویسان مرسوم شده اند ، برای مشخص نمودن نوع یک متغیر استفاده نمود . قواعد فوق ، اجباری نبوده و صرفا" بین برنامه نویسان مرسوم شده اند.رویکرد فوق ، گزینه ای مناسب برای نامگذاری متغیرها با توجه به نوع داده آنان است . در این روش که موسوم به Hungarian notation می باشد ،از سه حرف اول نام هر متغیر به منظور شناسائی نوع داده متغیر، استفاده می گردد :

 Data Type

 Prefix Example
BooleanblnblnMember
BytebytbytByte
CharchrchrChar
DatedatdatToday
DoubledbldblDouble
Decimal decdecDecimal
IntegerintintSalary
LonglnglngLong
SinglesngsngSingle
ShortshoshoShort
StringstrstrTextBox

در این رابطه از روشی دیگر با نام   Short Hungarain notation  استفاده می گردد . برای آگاهی از جزئیات این روش می توانید از آدرس  MSDN    ، استفاده نمائید .
در بخش سوم این مقاله با عملگرها ، عملیات بر روی متغیرهای رشته ای ، ثوابت و نوع های داده ساختیافته  نظیر آرایه ، آشنا خواهیم شد.

منبع : سخا روش

نظرات 1 + ارسال نظر
[ بدون نام ] جمعه 8 شهریور‌ماه سال 1387 ساعت 11:10 ق.ظ http://taranom14@bologfa.com

سلام وب تخصصی خوبی داری ولی چرااینقدرمطالبت کم است اگه بخواهی درموردویژال بیسیک برایت مطالب بفرستم ولی نه به خوبی شما

سلام
خیلی ممنون که از وقت عزیزتون واسه ما گذاشتید و نظر دادید.
من چون هنوز تازه به جمع برنامه نویسان vb پیوستم مطلب زیادی نتونستم در این زمینه در وبلاگ قرار بدم اما سعی میکنم که بتونم جدیدترین مطالب رو در این بخش بذارم
کوچیک همه شما محسن

برای نمایش آواتار خود در این وبلاگ در سایت Gravatar.com ثبت نام کنید. (راهنما)
ایمیل شما بعد از ثبت نمایش داده نخواهد شد