جزوه تایپ شده مبانی برنامه سازی ویژوال بیسیک
دانشگاه پیام نور احمد. صادقی علمی کاربردی استاد هدا معتمدی مهندسی برق دانشگاه ازاد کاردانی کارشناسی ارشد استخدامی خلاصه کتاب
[2] [3] [4] [5] /-[6] [7] “” [1] [8]
[9] ً [10]
ً [11] ً [12] [13] [14] [15] [16] [17] [18] [19]
ً [20] 
: ً : “” “” () () () [23]
“” [26] [27] [28] [29]
-[30] -ً [32]
:
[33]
“” “” [34]
[35] «» [36]
++ سیستمی که از پاسکال مشتق شده و برای استفاده توسط پیمانکاران دفاعی در نظر گرفته شده است. در ژاپن و جاهای دیگر، مبالغ هنگفتی برای بررسی زبانهای به اصطلاح «نسل پنجم» که ساختارهای برنامهنویسی منطقی را در خود جای داده بودند، صرف شد. [37] جامعه زبان های کاربردی به سمت استانداردسازی ML و Lisp حرکت کرد. همه این جنبشها به جای ابداع پارادایمهای جدید، ایدههایی را که در دهههای گذشته ابداع شده بود، توضیح دادند.
یکی از گرایشهای مهم در طراحی زبان برای برنامهنویسی سیستمهای مقیاس بزرگ در طول دهه 1980، افزایش تمرکز بر استفاده از ماژولها یا واحدهای سازمانی در مقیاس بزرگ کد بود. Modula-2 ، Ada و ML همگی سیستم های ماژول قابل توجهی را در دهه 1980 توسعه دادند، که اغلب با ساختارهای برنامه نویسی عمومی مرتبط می شدند.

دانلود رایگان برنامه سازی ویژوال بیسیک
رشد سریع اینترنت در اواسط دهه 1990 فرصت هایی را برای زبان های جدید ایجاد کرد. پرل ، در اصل یک ابزار اسکریپت نویسی یونیکس برای اولین بار در سال 1987 منتشر شد، در وب سایت های پویا رایج شد . جاوا برای برنامه نویسی سمت سرور مورد استفاده قرار گرفت و ماشین های مجازی بایت کد با وعده ” یک بار بنویسید، هرجا اجرا کنید ” دوباره در تنظیمات تجاری محبوب شدند ( UCSD Pascal برای مدتی در اوایل دهه 1980 محبوب بود). این تحولات اساساً بدیع نبودند. در عوض، آنها اصلاحات بسیاری از زبان ها و پارادایم های موجود بودند (اگرچه نحو آنها اغلب بر اساس خانواده زبان های برنامه نویسی C بود).
تکامل زبان برنامه نویسی هم در صنعت و هم در تحقیقات ادامه دارد. دستورالعملهای فعلی شامل تأیید امنیت و قابلیت اطمینان ، انواع جدید ماژولار ( میکسها ، نمایندگان ، جنبهها ) و یکپارچهسازی پایگاه داده مانند LINQ مایکروسافت است .
زبانهای برنامهنویسی نسل چهارم (4GL) زبانهای برنامهنویسی رایانهای هستند که هدفشان ارائه سطح بالاتری از انتزاع جزئیات سختافزار داخلی کامپیوتر نسبت به 3GL است. زبانهای برنامهنویسی نسل پنجم (5GL) زبانهای برنامهنویسی هستند که به جای استفاده از الگوریتم نوشته شده توسط یک برنامهنویس، مبتنی بر حل مسائل با استفاده از محدودیتهای دادهشده به برنامه هستند.
عناصر
همه زبانهای برنامهنویسی دارای بلوکهای ساختمانی اولیه برای توصیف دادهها و فرآیندها یا تبدیلهای اعمال شده بر روی آنها هستند (مانند جمع دو عدد یا انتخاب یک آیتم از یک مجموعه). این اصول اولیه با قواعد نحوی و معنایی تعریف می شوند که به ترتیب ساختار و معنای آنها را توصیف می کنند.
نحو
مقاله اصلی: نحو (زبان های برنامه نویسی)
درخت کد پایتون را با توکنیزاسیون داخلی تجزیه کنید
برجسته کردن نحو اغلب برای کمک به برنامه نویسان در جزوه مبانی برنامه سازی ویژوال بیسیک عناصر کد منبع استفاده می شود. زبان بالا پایتون است .
شکل سطحی یک زبان برنامه نویسی به عنوان نحو آن شناخته می شود . بیشتر زبان های برنامه نویسی صرفا متنی هستند. آنها از توالی متن از جمله کلمات، اعداد و علائم نگارشی استفاده می کنند، مانند زبان های طبیعی نوشتاری. از سوی دیگر، برخی از زبان های برنامه نویسی ماهیت گرافیکی بیشتری دارند و از روابط بصری بین نمادها برای تعیین یک برنامه استفاده می کنند.
نحو یک زبان ترکیب احتمالی نمادها را توصیف می کند که یک برنامه صحیح نحوی را تشکیل می دهند. معنای داده شده به ترکیبی از نمادها توسط معناشناسی (چه رسمی یا کدگذاری شده در یک پیاده سازی مرجع ) انجام می شود. از آنجایی که بیشتر زبان ها متنی هستند، این مقاله به نحو متنی می پردازد.
نحو زبان برنامه نویسی معمولاً با استفاده از ترکیبی از عبارات () –() :
::= | ::= | ::= [+-]؟[‘0’-‘9’]+
::= [‘A’-‘Z”a’-‘z’].*
::= ‘(‘ * ‘)’
:
() :
” ” “” بیان می کند که نمی تواند درست باشد.
قطعه زبان C زیر از نظر نحوی صحیح است، اما عملیات هایی را انجام می دهد که از نظر معنایی تعریف نشده اند (عملیات *p >> 4برای مقداری که نوع پیچیده ای دارد معنی ندارد و p->imتعریف نشده است زیرا مقدار of pنشانگر تهی است ):
مختلط * p = NULL ;
پیچیده abs_p = sqrt ( * p >> 4 + p -> im );
اگر اعلان نوع در خط اول حذف شود، برنامه در pحین کامپایل جزوه مبانی برنامه سازی ویژوال بیسیک ، یک خطا در متغیر تعریف نشده ایجاد می کند. با این حال، برنامه همچنان از نظر نحوی صحیح است زیرا اعلانهای نوع فقط اطلاعات معنایی را ارائه میدهند.
گرامر مورد نیاز برای تعیین یک زبان برنامه نویسی را می توان بر اساس موقعیت آن در سلسله مراتب چامسکی طبقه بندی کرد . سینتکس اکثر زبان های برنامه نویسی را می توان با استفاده از گرامر نوع 2 مشخص کرد، یعنی گرامرهای بدون متن هستند. [39] برخی از زبانها، از جمله Perl و Lisp، حاوی ساختارهایی هستند که امکان اجرا در مرحله تجزیه را فراهم میکنند. زبانهایی که ساختارهایی دارند که به برنامهنویس اجازه میدهد تا رفتار تجزیهکننده را تغییر دهد، تجزیه و تحلیل نحو را به یک مشکل غیرقابل تصمیم تبدیل میکنند و به طور کلی تمایز بین تجزیه و اجرا را محو میکنند. [40] برخلاف سیستم کلان لیسپ و پرلBEGINبلوک ها که ممکن است محاسبات کلی داشته باشند، ماکروهای C صرفاً جایگزین رشته هستند و نیازی به اجرای کد ندارند. [41]
معناشناسی
اصطلاح معناشناسی به معنای زبان ها بر خلاف شکل آنها ( نحو ) اشاره دارد.
معناشناسی ایستا
یک معناشناسی ایستا محدودیت هایی را بر ساختار متون معتبر تعریف می کند که بیان آنها در فرمالیسم های نحوی استاندارد دشوار یا غیرممکن است. [1] [ تأیید ناموفق ] برای زبان های کامپایل شده، معنای ایستا اساساً شامل آن () [42] (ً )،
فهرست مطالب