پاورپوینت نسلها و زبانهای برنامه نویسی (pptx) 29 اسلاید
دسته بندی : پاورپوینت
نوع فایل : PowerPoint (.pptx) ( قابل ویرایش و آماده پرینت )
تعداد اسلاید: 29 اسلاید
قسمتی از متن PowerPoint (.pptx) :
موضوع پروژه : نسلها و زبانهای برنامه نویسی و
برنامه نویسی سی شارپC#
بسمه تعالی
مقدمه
مسلما یکی از سودمندترین اختراعات بشر تا به امروز کامپیوترها بوده اند. دستگاه هایی که هزاران بار سریعتر از انسان فکر میکنند و سرعت عملشان به طرز غیر قابل باوری بالاست. سرعت و قدرت، امکان انجام خیلی از کارهایی را فراهم کردند که انسان به طور عادی از انجام آن ها عاجز بود. اما یک مشکل وجود داشت: این دستگاه ها به همان اندازه که قوی بودند ، کم هوش هم بودند؛ آن ها به طور عادی هیچ عملی انجام نمی دادند مگر این که به صراحت از آن ها درخواست می شد. اما این درخواست چگونه باید صورت می گرفت؟ باید راهی برای گفتگو با آن ها پیدا می شد. و در این زمان بود که متخصصان تصمیم گرفتند زبان های مخصوصی را بوجود بیاورند تابتوانند با کامپیوترها گفتگو کنند. این زبان های مخصوص به اصطلاح زبان های برنامه نویسی کامپیوتر نام گرفتند.به نسل اولیه زبان های برنامه نویسی، زبان های سطح پایین گفته می شد، چرا که به سختی قابل یادگیری و به کارگیری بودند. پیاده سازی اعمالی ابتدایی توسط این زبان ها باعث می شد مدت ها وقت با ارزش برنامه نویسان گرفته شود. اما وضع به همین منوال نماند و با گذشت زمان زبان های جدیدی به وجود آمدند که آموختن آن ها راحت تر بود. طی سه دهه ی اخیر، صنعت کامپیوتر مورد هجوم انواع زبان های برنامه نویسی قرار گرفت.
سیستم های کامپیوتری جدید ، تاثیرات وسیع و رشد یابنده ای بر اکثر فعالیت های بشری داشته و دارند. کامپیوتر امکان داده است تا زمینه های جدیدی از تحقیقات در علوم ایجاد شوند که پیشتر ، به سبب کمبود داده ها و محدودیت در انجام تحلیل ها و محاسبات عددی ، چندان شناخته شده نبودند. کامپیوتر ، پیشرفت های تکنولوژی ، از قبیل سفر به ماه ، را تسهیل کرده و بعنوان وسیله ای برای کنترل فرایندهای صنعتی ، به گستردگی مورد استفاده قرار می گیرد . اکثر سیستم های حسابداری و بانکی ، اینک کامپیوتری شده و در فعالیت هایی مثل مدیریت موجودی و انبار ، پرداخت حقوق حمل و نقل و مراسلات ، از کامپیوتر در حد وسیع استفاده می شود . سازمان های دولتی ، اینک برای ذخیره و بازیابی اطلاعات ، کامپیوتر را بکار می گیرند . در دانشگاه ها برای ذخیره و بازیابی اطلاعات ، امور حسابداری و پرداخت حقوق ، برنامه ریزی دروس و ثبت نام دانشجویان و فعالیت های دیگر از کامپیوتر بهره برداری می شود . بسیاری از سیستم های کتابداری ، اینک کامپیوتری شده اند و در کتابخانه ها ، حتی برای نگاهداری و بازیابی اسناد و مدارک و چکیده های علمی ، از کامپیوتر استفاده می کنند. سخن کوتاه ، کامپیوتر در تمام فعالیت هایی که در آنها پردازش سریع حجم زیادی از اطلاعات ، مورد نیاز باشد، بکار برده می شود .
برای آنکه بتوانیم مقایسه خوبی بین زبان های برنامه نویسی و نسل های آن داشته باشیم ابتدا لازم است که ببینیم یک زبان برنامه نویسی دارای چه ویژگی هایی است: ویژگی هایی که غالبا برای تشکیل یک زبان برنامه نویسی مهم شمرده می شوند:
تابع : یک زبان برنامه نویسی، زبانی است که برای نوشتن برنامه های رایانه ای به کار می رود که رایانه ای را برای انجام محاسبات یا اجرای الگوریتم و یا احتمالا کنترل دستگاه های خارجی مثل چاپگر، ربات و… درگیر می کنند.
هدف: زبان های برنامه نویسی با زبان های طبیعی تفاوت دارند و آن اینکه زبان های طبیعی فقط برای فعل و انفعالات بین مردم به کار می روند، در حالیکه زبان های برنامه نویسی همچنین به انسانها اجازه می دهد که از طریق دستورات با ماشین ها ارتباط برقرار کنند. برخی زبان های برنامه نویسی بوسیله یک دستگاه استفاده می شوند تا دستگاه دیگری را کنترل کند. برای مثال برنامه های پست اسکریپت(post script) غالبا توسط برنامه دیگری برای کنترل یک چاپگر و یا نمایشگر ایجاد می شوند.
ساختارها: زبان های برنامه نویسی ممکن است ساختارهایی برای تعریف و تغییر داده ساختارها یا کنترل جریان اجرا داشته باشند.
توان بیانگر: نظریه محاسبات، زبان ها را بوسیله محاسباتی که توان بیان آنها را دارند طبقه بندی می کند. تمام زبان های “کامل تورینگ” می توانند مجموعه یکسانی از الگوریتم ها را پیاده سازی کنند.ANSI/ISO SQL و Charity مثال هایی هستند از زبان هایی که کامل تورینگ نیستند، ولی غالبا زبان برنامه نویسی نامیده می شوند.
برخی مولفین اصطلاح” زبان برنامه نویسی” را محدود به آنهایی می کنند که می توانند تمام الگوریتم های ممکن را پیاده سازی کنند، گاهی اوقات اصطلاح” زبان رایانه” برای زبان های برنامه نویسی محدودتر به کار می رود.زبان های غیر محاسباتی، مانند زبان های مارک آپ(markup) HTML یا گرامرهای قراردادی مثل BNF، معمولا زبان برنامه نویسی محسوب نمی شوند. یک زبان برنامه نویسی(که می تواند کامل تورینگ نباشد) ممکن است در این زبان های غیر محاسباتی (میزبان) تعبیه شوند.
تقسیم بندی زبان های برنامه نویسی
الف) روشهای برنامهنویسی
زیر روالی
ساخت یافته
مدولار
شئ گرا
ب) نزدیکی به زبان ماشین
سطح پایین
سطح میانی
سطح بالا
ج) نوع ترجمه
مفسری
کامپایلری
د) رابط برنامهنویسی
مبتنی بر متن
مبتنی بر گرافیک (ویژوال)
در بالا انواع تقسیم بندی زبانها را دیدیم ولی اگر بخواهیم آنها را بر اساس زمان بوجود آمدنشان بررسی کنیم مسأله نسلهای زبانهای برنامه نویسی پیش میآید که در ادامه به بررسی آنها میپردازیم :
نسل اولدر سالهای دهه ۱۹۵۰ برنامه نویسی کامپیوترهای اولیه توسط تغییر سیم ها و تنظیم هزاران کلید و سوییچ انجام میشد. در برخی موارد این تنظیمات بر روی کاغذهای طومار گونه و یا کارت های سوراخشده نوشته می شدند که به کامپیوتر می گفتند چه کاری را (What)، به چه صورت (How) و در چه زمانی (When) انجام دهد.به منظور اجرای یک نرم افزار، برنامه نویس باید اطلاعات جامع و کاملی از کامپیوتر موردنظر می داشت. یک اشتباه کوچک منجر به شکست در کل برنامه کامپیوتری میشد
نسل دومدر این دوره افراد به دنبال ابزارهای سریعتر و راحتتری برای برنامه نویسی بودند. نتیجه این تلاشها تولد نسل دوم زبان های برنامه نویسی در اواسط دهه ۱۹۵۰ شد. در این نسل از نمادها به جای دستورات صفر و یک استفاده می شد.
نسل سومدر اواخر دهه ۱۹۵۰ مفسرهای زبان های طبیعی و کامپایلرهای پا به عرصه ظهور گذاشتند. قدیمیترین زبان برنامه نویسی این نسل FORTRAN است که در سال ۱۹۵۳ توسط IBM ساخته شد. در سال ۱۹۵۹ زبان برنامه نویسی COBOL به منظور استفاده در دنیای نرم افزارهای تجاری عرضه گردید.زبانهای سطح بالای برنامه نویسی مانند BASIC ، PASCAL ، ALGOL ، PL/I و C در این دوره معرفی شدند