پاورپوینت کامل و جامع با عنوان طراحی و پیاده سازی زبان های برنامه سازی (Programming Languages Design And Implementation) در 485 اسلاید
زبانهای برنامهنویسی ساختارهای زبانی دستور مداری در رایانهها هستند که بهوسیلهٔ آنها میتوان یک الگوریتم را بهوسیلهٔ ساختارهای دستوری متفاوت برای اجرای رایانه توصیف کرد و با این روش امکان نوشتن برنامه جهت تولید نرمافزارهای جدید بوجود میآید. معمولاً هر زبان برنامهنویسی دارای یک محیط نرمافزاری برای وارد کردن متن برنامه، اجرا، همگردانی و رفع اشکال آن هستند. عموماً زبانهای برنامهنویسی را به پنج نسل تقسیم میکنند:
یک زبان برنامهنویسی یک زبان مصنوعی است که برای بیان محاسباتی که توسط یک ماشین (مخصوصا رایانه) قابل انجام است، طراحی شدهاست. زبانهای برنامهنویسی برای ایجاد برنامههایی به کار میروند که رفتار یک ماشین را مشخص میکنند، الگوریتم دقیق را بیان میکنند، یا روشی برای ارتباط انسانند. بسیاری از زبانهای برنامهنویسی تعدادی قالب از ویژگیهای نوشته شده دستوری(syntax) و معناشناسی (semantics) دارند، چرا که رایانهها دستورهای دقیقاً مشخص نیاز دارند. برخی توسط سند خصوصیات (specification document) تعیین شدهاند. (برای مثال یک استاندارد ISO)، در حالی که برخی دیگر دارای پیادهسازی غالبی میباشند. (مانند Perl) اولین زبان برنامهنویسی به قبل از اختراع رایانه بازمیگردد، و برای هدایت رفتار ماشینهایی مانند دستگاههای نساجی اتوماتیک و نوازندههای پیانو به کار میرفت. هزاران زبان برنامهنویسی خلق شدهاند، بیشتر در زمینهٔ رایانه، زمینهای که هر ساله بسیاری دیگر ایجاد میشوند. تقسیمبندی زبانهای برنامهنویسی را میتوان از چهار دیدگاه متفاوت مورد بررسی قرار داده و تقسیمبندی کرد: الف) روشهای برنامهنویسی
ب) نزدیکی به زبان ماشین
ج) نوع ترجمه
د) رابط برنامهنویسی
تعاریف ویژگیهایی که غالباً برای تشکیل یک زبان برنامهنویسی مهم شمرده میشوند:
برخی مؤلفین اصطلاح «زبان برنامهنویسی» را محدود به آنهایی میکنند که میتوانند تمام الگوریتمهای ممکن را پیادهسازی کنند، گاهی اوقات اصطلاح «زبان رایانه» برای زبانهای برنامهنویسی محدودتر به کار میرود. زبانهای غیر محاسباتی، مانند زبانهای مارک آپ(markup) HTML یا گرامرهای قراردادی مثل BNF، معمولاً زبان برنامهنویسی محسوب نمیشوند. یک زبان برنامهنویسی (که میتواند کامل تورینگ نباشد) ممکن است در این زبانهای غیر محاسباتی (میزبان) تعبیه شوند.
فهرست مطالب: فصل اول: مقدمات دلايل مطالعه زبان هاي برنامه سازي دامنه هاي برنامه نويسي دسته بندي زبان ها موضوعات ويژه معيارهاي ارزيابي زبان عوامل موثر بر طراحي زبان روش هاي پياده سازي زبان و… فصل دوم: مفاهیم اساسی مفهوم اشياي داده اسامي در زبان ها ثوابت داراي نام متغیر نام هاي مستعار مفهوم انقياد انقياد صفات به متغيرها انقيادهاي نوع انقياد حافظه و طول عمر انواع متغيرها و… فصل سوم: انواع داده های اولیه انواع داده ها توصيفگر نوع داده سطوح بررسي انواع داده ها بررسي انواع داده اوليه انواع داده اسكالر انواع داده مركب فايل های ورودي – خروجي و… فصل چهارم: انواع داده های ساختاری سطوح بررسي ساختمان داده ها مشخصات انواع ساختمان داده عمليات متداول در ساختمان داده ها پياده سازي انواع ساختمان داده نمايش حافظه ساختمان داده نكات نمايش حافظه ساختمان داده ها پياده سازي عمليات انتخاب عنصر در نمايش ترتيبي پياده سازي عمل انتخاب عنصر در نمايش پيوندي و… فصل پنجم: بسته بندی و انتزاع مفهوم انتزاع نوع داده انتزاعي نكات طراحي انواع داده انتزاعي نوع داده انتزاعي در Ada انواع داده انتزاعي كه پارامتر دارند تعريف نوع جديد تعريف انواعي جديدي كه پارامتر دارند ساختارهاي بسته بندي بسته بندي اسامي بسته بندي با زير برنامه ها و… فصل ششم: شی گرایی كلاس ها و اشيا كلاس ها در ++C كلاس ها در Java كلاس ها در #C پياده سازي كلاس ها وراثت انقياد پوياي متدها چندريختي و… فصل هفتم: عبارات و کنترل ترتیب اجرا كنترل ترتيب ضمني و صريح كنترل ترتيب در سطح عبارات عبارات محاسباتی ترتيب ارزيابي عملگرها شركت پذيري پرانتزها عبارات شرطی ترتيب ارزيابي عملوند و… فصل هشتم: حوزه ها و زیربرنامه ها ويژگي هاي كلي زيربرنامه ها انواع زيربرنامه ها نكات طراحي زيربرنامه ها وابستگي ها و محيط هاي ارجاع قوانين حوزه زبان محيط هاي ارجاع محلي پارامترها مدل هاي معنايي ارسال پارامترها و… فصل نهم: پیاده سازی زیربرنامه معناي فراخواني و برگشت پياده سازي زيربرنامه هاي ساده پياده سازي زيربرنامه هايي با متغيرهاي پوياي پشته اي زيربرنامه هاي تودرتو و… فصل دهم: مدیریت حافظه عناصري كه نياز به حافظه دارند راهبردهاي مديريت حافظه اهميت مديريت حافظه مراحل مديريت حافظه بخش هاي حافظه در زمان اجرا انواع مديريت حافظه مديريت حافظه ايستا و…
|
بازدیدها: 0