مقدمه ای بر ویژوال بیسیک نت
بیسیک زبانی است که دوران تحول زیادی را پشت سر گذاشته است.
اولین نسخه از زبان بیسیک طوری بود که برنامه نویسی در آن دشواری خاصی داشت .
امروزه با جدیدترین نسخه بیسک به نام ویژوال بیسیک نت سر و کار داریم.
این زبان در محیط ویندوز قدرت فوق العاده ای دارد، به طوری که از سبک برنامه نویسی شی ء گرا پیروی می کند.
تولید برنامه ها در این زبان بسیار ساده است، چرا که بخش زیادی از برنامه را کامپایلر زبان تولید میکند.
برنامه نویسی شی ء گرا
برنامه نویسی شی ء گرا شیوه نوینی است که در آن می توان قطعاتی را ایجاد کرد و در برنامه های مختلف مورد استفاده قرار داد.
قابلیت خوانایی برنامه هایی که در این روش نوشته می شوند بالا بوده، تست، عیب یابی و اصلاح آن ها آسان است.
شی ء گرایی، بر اشیا تأکید دارد.
تعدادی از زبان ها برای برای برنامه نویسی شی ء گرا طراحی شده اند.
زبان اِسمالتاک یک زبان برنامه نویسی کاملا شی ء گرا است.
زبان C++ که تکامل یافته زبان C است، دارای ویژگیهایی است که برنامه نویسی شی ء گرا در آن امکان پذیر است.
در این زبان، برنامه نویسی ساخت یافته نیز ممکن است.
ویژوال بیسیک نت زبانی کاملا شی ء گرا است.
برنامه نویسی شی ء گرا، اشیا دنیای واقیسعی را با نرم افزار مناسبی مدل سازی می کند.
از امتیاز رابطه کلاس استفاده می کندکه در آن، اشیایی از یک کلاس- مثل کلاسی از وسیله نقلیه- مشخصات مشابهی دارند.
از امتیاز وراثت و یا حتی وراثت چندگانه نیز استفاده می کند که در آن، کلاس های جدیدی که ایجاد می شوند، مشخصاتی از کلاسهای موجود را به ارث می برند و حتی ویژگیهای منحصر به فردی نیز دارند.
برنامه نویسی شی ء گرا، داده ها(صفات)، و توابع(رفتارها) را در بسته ای به نام اشیاء، بسته بندی می کند.
داده ها و توابع هر شی ء شدیدا به هم گره خورده اند.
اشیا دارای ویژگیهای پنهان سازی اطلاعات اند.
یعنی، گرچه اشیا ممکن است طریقه ارتباط با اشیای دیگر را از طریق واسط بدانند، ولی اجازه ندارند که از چگونگی پیاده سازی اشیای دیگر آگاه باشند.
به عبارت دیگر، جزییات پیاده سازی، در داخل اشیا مخفی شده است.
در C و سایر زبان های برنامه سازی ساخت یافته، برنامه ها به فعالیت ها توجه دارند، در حالی که در زبان ویژوال بیسیک نت به اشیا توجه می شود.
در C ، واحد برنامه نویسی، تابع است.
در ویژوال بیسیک نت، واحد برنامه نویسی، کلاسی است که اشیا سرانجام از آن نمونه سازی(ایجاد) می شوند.
کلاس های ویژوال بیسیک نت حاوی رویه ها هستند.
برنامه نویسی ویژوال بیسیک نت بر روی ایجاد انواع جدیدی به نام کلاس متمرکز می شود.
همان طور که می دانید، بعضی از انواع داده ها مثل String,Double,Integer در ویژوال بیسیک نت موجود است.
این انواع را انواع ابتدایی می نامیم.
برنامه نویس می تواند با استفاده از انواع ابتدایی، انواع دیگری ار ایجاد کند که آن ها را انواع جدید می نامیم.
هر کلاس علاوه بر داده ها، توابعی دارد که داده ها، توابعی دارد که داده ها را دستکار می کنند.
قطعات داده ای کلاس را اعضای داده ای گویند.
قطعات تابعی کلاس را توابع عضو یا متد گویند.
می دانید که نمونه ای از هر نوع ابتدایی را متغیر گویند.
به عنوان مثال، در دستور x, Dim x As Integer نمونه ای از نوع Integer است و متغیر نام دارد.
نمونه ای از انواع جدید (مثل کلاس) را شی ء گویند.
در ویژوال بیسیک نت، بر کلاس ها، ولی در c بر توابع تأکید میشود.
اسامی موجود در صورت مسئله (مشخصات سیستم) به برنامه نویس کمک می کند تا کلاس هایی را تعیین می کند که با ایجاد اشایی از آن ها که با یکدیگر کار می کنند، سیستم را پیاده سازی کند.
نوع رشته ای رشته دنباله ای از کاراکترها است، مثل Ali و Computer Science نوع رشته ای معمولا برای ذخیره اسامی افراد و سایر متن ها به کار می رود و به صورت طول متغیر و طول ثابت استفاده می شود.
نوع بولی این نوع که نوع منطقی نیز نامیده می شود داده هایی را نشان می ذعذ که می تواند دو مقدار درستی یا نادرستی را بپذیرند که به ترتیب با True و Flase نمایش داده می شوند.
نوع تاریخ تاریخ و زمان را می توان در ویژوال بیسیک نت به عنوان یک نوع مورد استفاده قرار داد، برای این منظور باید در دو طرف آن ها علامت قرار گیرد.
مثال های زیر را ببینید: March 14 , 1999 19:11:22 نوع Variant از این نوع معمولاً در مواردی استفاده می شود که از یک محل حافظه برای ذخیره چندین نوع استفاده می گردد.
یعنی یک محل Variant برای ذخیره موقت هر نوع داده ها به کار می رود که این داده ها بعدا در محل دیگری با نوع مشخص ذخیره می شوند این نوع تمام انواع داده ها به جز رشته ای با طول ثابت را نگهداری می کند.
متغیرها متغیرها نام هایی برای کلمات حافظه اند و محتویات آن ها ممکن است در حین اجرای برنامه تغییر کنند.
برای نامگذاری متغیرها از ترکیبی از حروف a تا z (کوچک و بزرگ)، ارقام و خط زیر (_) استفاده می شود، به طوری که با رقم شروع نشوند، مثل SUMI ، SI و 2 _ Average طول نام متغیرها می تواند تا 255 حرف باشد.
اعلان متغیرها قبل از این که از این متغیر استفاده کنید، باید آن ها را در برنامه اعلان نمایید.
برای این منظور، نام و نوع آن ها را تعیین می کنیدو برای اعلان متغیرها از دستور Dim استفاده می شود: نوع متغیر As نام متغیرDim نام متغیر نامی است که برای متغیر خود انتخاب می کنید و نوع متغیر تعیین می کند که متغیر مورد نظر از چه نوعی باشد.
مثال های زیر را ببینید: Dim X As Integer Dim Y As Currency Dim ST As String, P1 As Long Dim STR As String *5 Dim SUM As Variant دستور اول متغیر X را از نوع صحیح، دستور دوم متغیر Y را از ارزی، دستور سوم متغیر ST را از نوع رشته ای با طول متغیر و P1 را از نوع صحیح بزرگ و دستور چهارم متغیر STR را از نوع رشته ای با طول ثابت 5 و دستور پنجم متغیر SUM را از نوع Variant تعریف می کند.
به شکل تعریف متغیرهای رشته ای طول ثابت و طول متغیر توجه کنید .
در مورد رشته های با طول ثابت دقت داشته باشید که اگر رشته انتساب داده شده به آن، بیش از طول تعیین شده باشد، فقط تا همان طول ثابت منظور خواهد شد.
اگر نوع متغیری را Variant تعریف کنید، در ادامه برنامه وقتی مقداری در آن قرار گرفت، نوع آن تعیین می شود: Dim x As Variant X= 10 دستور اول نوع متغیر x را Variant تعریف می کند دستور دوم مقدار 10 را در x قرار می دهد و در نتیجه نوع آن Integer تعیین خواهد شد.
مقدار دادن به متغیرها پس از اعلان متغیرها می توان به آن ها مقدار داد و از آن ها استفاده کرد.
برای مقدار دادن به سه روش عمل می شود: (1) مقدار دهی اولیه در هنگام معرفی متغیر ، (2) دستور انتساب و (3 ) دستورات ورودی.
در این بخش دستور مقدار دهی اولیه در هنگام تعریف و انتساب را بررسی کرده، دستورات ورودی را در جای مناسبی شرح خواهیم داد.
مثال های زیر را ببینید: STR را از نوع رشته تعریف می کند.
Dim STR As string X را از نوع Integer تعریف کرده 125 را در آن قرار می دهد.
Dim x As Integer = 125 65/1472 در Y قرار میگیرد.
Dim Y As Single= 1472.65 رشته AHMAD در STR قرار می گیرد.
STR= "AHMAD" st را از نوع رشته ای تعریف کرده رشته Computer Science را در آن قرار می دهد.
Computer Science Dim st As String= Sum را از نوع Integer تعریف می کند Dim Sum As Integer 2545 در SUM قرار گیرد.
SUM=2545 عملگرها عملگرها نمادهایی هستند که برای انجام عملیات بر روی متغیرها و مقادیر ثابت مورد استفاده قرار می گیرند، مثل نماد+ که برای عمل جمع به کار می رود.
عملگرها به چهار دسته تقسیم می شوند : حسابی (جدول 3-1) رابطه ای (جدول 4-1) ، منطقی (جدول 6-1) .
در مورد جدول 5-1 دقت داشته باشید که X و Y عبارات منطقی اند که ممکن است ارزش درستی یا نادرستی داشته باشند.
با فرض این که T ارزش درستی و F ارزش نادرستی باشد، عملکرد هر کدام از این عملگرها در جدول 7-1 آمده است.
عملگر NOT برروی یک عملوند عمل می کند و ارزش آن را نقیص می کند عملگر AND بر روی دو عملوند ارزش T داشته باشند، در بقیه موارد ارزش نادرستی دارد.
حاصل عملگر OR وقتی ارزش نادرستی است که هر دو عملوند آن ارزش نادرستی داشته باشند ، در بقیه موارد ارزش درستی دارد.
حاصل عملر XOR وقتی ارزش درستی است که ارزش یکی از دو عملوند T و دیگری F باشد.
حاصل عملگر EQU وقتی ارزش درستی است که ارزش هر دو عملوند یکسان باشد (هر دو T یا هر دو F باشند).
حاصل عملگر IMP وقتی ارزش نادرستی است که عملوند راست F باشد در بقیه موارد ارزش آن درست است.
تعریف عبارت عبارت، هر ترکیبی از متغیرها، ثوابت و عملگرها است که نتیجه آن می تواند ارزیابی شود.
عبارات زیر را ببینید: 2+3 4+X*Y (6+P)*M برای ارزیابی عبارات باید بدانیم که عملگرها به چه ترتیبی اجرا می شوند.
به عبارت دیگر تقدم عملگرها چگونه است.
حاصل عبارات اول برابر با 5 است.
اگر Y=4 , X=2 باشد، حاصل عبارت دوم چیست؟
دقت کنید که ابتدا عمل ضرب (2*4) انجام می شود که حاصل آن 8 است و این مقدار با 4 جمع می شود که حاصل این عبارت 12 است.
می گوییم تقدم عملگر ضرب از تقدم عملگر جمع بیشتر است.
اگر M=7 , P=4 باشد، حاصل عبارت سوم چیست؟
چون 6+P در داخل پرانتز قرار دارد، ابتدا عمل جمع انجام می شود، یعنی 6+4 برابر با 10 است و این مقدار در 7 ضرب شده حاصل عبارت 70 است.
اگر در یک عبارت، عملگرهای محاسباتی، رابطه ای و منطقی با هم وجود داشته باشند، تقدم آن ها به شرح زیر است: عملگرهای محاسباتی عملگرهای رابطه ای عملگرهای منطقی جدول 1-1 انواع عددی در ویژوال بیسیک نت.جدول 1-1 انواع عددی در ویژوال بیسیک نت.جدول 1-1 انواع عددی در ویژوال بیسیک نت.نوعمیزان حافظه (بایت)بازده قابل قبولByte10 تا 255Integer232768- تا 32767Long42147483648-تا2147483647Single4منفی از 38+E402823/3-تا45-E401298/1- مثبت از 45-E401298/1تا38+E402823/3Double8منفی از 308 E+79769313486232/1- تا324-E94065645841247/4-مثبت از 324-E94065645841247/4تا308E+7976931348623/1Currency8از5808/922337203685477-تا5807/922337203685477Decimalاگر از اعشار استفاده شود در بازه 9228162514264337593543950335/7± و اگر از اعشار استفاده نشود در بازه 79228162514264337593543950335± جدول 2-1 انواع غیر عددی.جدول 2-1 انواع غیر عددی.جدول 2-1 انواع غیر عددی.نوعمیزان حافظه(بایت)بازه قابل قبولString (طول ثابت)طول رشتهاز یک تا 65400 کاراکترString (طول متغیر)طول رشته+ 10 بایتاز صفر تا 2 میلیارد کاراکترDate8تاریخ قابل قبولBoolean2True یا FalseVariant (عددی)16 بایتبه اندازه نوع عددی DoubleVariant (رشته ای)طول+ 22 بایتمانند رشته طول متغیر جدول 3-1 عملگرهای حسابیجدول 3-1 عملگرهای حسابیجدول 3-1 عملگرهای حسابیجدول 3-1 عملگرهای حسابیعملگرناممثالنتیجه^توان3^29*ضرب4*520/تقسیم16/28+جمع2+57-تفریق15Mod 35Modباقیمانده تقسیم15 Mod 30\تقسیم صحیح14\34+ و&الحاق رشته ها"" +"|""ALI" جدول 4-1 عملگر های رابطه ایجدول 4-1 عملگر های رابطه ایجدول 4-1 عملگر های رابطه ایعملگرناممثال>کوچک ترy = >کوچکتر مساویy بزرگ ترy = بزرگ تر مساوینا مساویجدول 4-1 عملگر های منطقی.جدول 4-1 عملگر های منطقی.جدول 4-1 عملگر های منطقی.عملگرناممثالNOTنقیضNOT X