عموماً زبانهای برنامه نویسی را به پنج نسل تقسیم میکنند:
نسل اول زبان ماشین - زبان صفرو یک
نسل دوم زبانهایی مانند اسمبلی -قابل فهم تر برای انسان
نسل سوم زبانهایی مانند کوبول و پی ال وان و... -دستورات قابل فهم تر برای انسان و نیاز به کمپایلرها
نسل چهارم مثل زبانهای اوراکل و فاکس پرو و اس کیو الها - نزدیک به محاورههای انسانی
نسل پنج زبانهایی مانند prolog , ops5 - تمرکز بر حل مسئله و استفاده از الگوریتمهای نوشته شده توسط برنامه نویس
صنعتی-تجاری
• اِیدا • اسمالتاک • اسمبلی • ایاسپی • آک • ایفل • بیسیپیال • بیسپ معمولی • پاسکال • پاوربیلدر • پایتون • پرل • پیاچپی • اسکیوال • پیال/اسکیوال • تیاسکیوال • تیسیال • سیپیال • جاوا • جاوااسکریپت • دلفی • روبی • ساس • جی • جی++ • جیشارپ • سی • سی++ • سیشارپ • فرترن • کوبول • کلدفیوژن • پرولوگ • لیسپ • لیسپ معمولی • آیکون •
میراندا • فری بیسیک • ویژوال بیسیک دات نت • ویژوال بیسیک • ویژوال سی توکار • ویژوال سی دات نت • ویژوال سی • ویژوال فاکس پرو • ویژوال سورس سیف
دانشگاهی
الگول • ایپیال • جی • اسکیم • سیالیو • امال • آیسوییم • پاسکال • فرترن • پرولوگ • لیسپ • لوگو • هسکل
تاریخی
الگول • بیسیک • کیو بیسیک
آباپ (به انگلیسی: ABAP) یا نرمافزار برنامهنویسی پیشرفته? کسبوکار (به انگلیسی: Advanced Business Apllication Programming) یک زبان برنامهنویسی سطح بالا میباشد که توسط شرکت آلمانیآباپ که یکی از بسیاری از برنامههای نسل چهارم کاربردی خاص (GLs4) است، که برای اولین بار در دهه? 1980 توسعه یافتهاست. این در اصل زبان گزارش برای SAP R/2 یک بستر نرمافزاری است که توسط شرکتهای بزرگ برای ساخت برنامههای کاربردی کسب و کار رایانههای بزرگ برای مدیریت امور مالی و حسابداری فعال شدهاست.
SAP ایجاد شدهاست. امروزه موقعیت آن به طور رایج در کنار آخرین ورژن معرفی شده جاوا به عنوان زبان برنامه نویسی برای سرور کاربردی SAP، بخشی از بسترهای نرمافزاری NETWORK برای ساخت برنامههای کاربردی کسب و کار است. نحو ABAP تا حدودی شبیه به کوبول است.
نمونه برنامه:
PROGRAM TEST. WRITE "Hello World".
ایدا یک زبان برنامهنویسی استاندارد شده و همهمنظورهاست که در گستره? وسیعی از کاربردها استفاده میشود – از کنترل موشکها گرفته تا تحویل صورتپرداخت به سیستم کنترل ترافیک هوایی.
ایدا دارای ویژگیهایی است که معمولاً در زبانهای برنامهنویسی دیگر یافت میشود و افزون بر آن از شیوه? جدید برنامهنویسی نیز برای کنترل سختافزار مورد نظر تا زمان دقیق سررسید، و برای ایجاد و بهبود برنامههای طولانی و پیچیده توسط گروههای برنامهنویس در دورههای بلندمدت پشتیبانی میکند.
ایدا شیوه? صحیح برنامهنویسی را به وسیله? اصول مهندسی نرمافزار یکپارچه با امکان تایپ کد قوی، پیمانهای بودن، قابلیت حمل، قابلیت استفاده? مجدد و قابلیت خواندن (یا خوانایی) تقویت میکند. این خصوصیات هزینهها را در تولید و توسعه، بررسی، اشکالزدایی و نگهداری نرمافزار، کاهش میدهد.
with Ada.Text_IO;
procedure Hello is
begin
Ada.Text_IO.Put_Line(«Hello, world!»);
end Hello;
زبان اسمالتاک یک زبان شیگرا و دارای تایپ پویا و زبان برنامهنویسی انعکاسی است.
دستورات اسمالتاک-80 درصدد کوچک بودن است و تناها از تعدادی کلمات کلیدی و اعلامات استفاده مینماید. در حقیقت تنها شش کلمه کلیدی وجود دارد: true، false، nil، self، super، و thisContext. (اینها در واقع کلمات کلیدی نیستند تنها شبه کلمات کلیدی است که شیهایی به عنوان تنها نمونه کلاسهای خود هستند. اسمالتاک در حقیقت اصولا کلمه کلیدی را به عنوان یک مفهوم نپذیرفته است.) تنها ساختههای داخلی زبان ارسال پیامها، انتصاب، بازگشت مقدار در متد، و ثابت برای بعضی اشیا. باقیمانده زبان، دستورات کنترلی همانند انتخاب شرطی و دستورات تکرارپذیر توسط استاندارد اسمالتاک در کتایخانه کلاسها پیاده میشود. بدلیل بهینهسازی ممکن است بعضی پیادهسازیها به بعضی از پیامها اهمیت زیادی داده ولی باید دقت کرد که این اهمیت دادن در داخل زبان نوشته نشده و تنها یک بهینهسازی است.
Transcript show: "Hello, world!".
زبان همگذاری یا اَسمبلی (به انگلیسی: Assembly) به مجموعه زبانهای برنامهنویسی سطح پایینی اطلاق میشود که در آن مستقیماً دستورالعملهای پردازنده? اصلی (CPU) نوشته میشود ( یعنی دستوراتی که ALU توانایی انجام آنها را دارد.)
به دلیل سطح پایین بودن این زبانها، نوشتن، اشکالزدایی و نگهداری برنامه سختتر است. برای هر خانواد? CPU یک زبان اسمبلی وجود دارد.
این زبان به زبان مادر کامپیوتر بسیار نزدیک میباشد بهطوری که تمامی برنامههای اولیه همچون ++C توسط زبان اسمبلی ساخته شده است و همچنین اکثر کارها در زمین? هک و مانند آن با این زبان انجام میشود. در زبان اسمبلی هر دستور زبان متناظر یک دستور باینری است. این زبان را با استفاده از اسمبلرها میتوان به زبان ماشین یعنی صفر و یک تبدیل کرد. نرمافزارهای اسمبلر بر روی سیستم نصب شده و با وارد کردن کدهای اسمبلی و اشکالزدایی کردن آن میتوان آنها را به زبان ماشین تبدیل کرد.
همچنین هر کد اسمبلی مخصوص همان اسمبلری است که با آن اصطلاحاً اسمبل شده است، بنابراین برای مثال یک کد اسمبلی پردازنده x86 نوشته برای اسمبلر GAS (جیاِنیو اسمبلر) نمیتواند با اسمبلر MASM (مایکروسافت اسمبلر) برای پردازنده x86 اسمبل شود.
زبان اسمبلی را به دو صورت می توان پیاده سازی کرد یکی از طریق برنامه doc و دیگری با برنامه emu که این برنامه تحت ویندوز می باشد و به صورت گرافیکی شما می توانید با این برنامه کار کنید.
صفحههای سرور فعال (به انگلیسی: Active Server Pages یا به صورت مخفف ASP) اولین موتور اسکریپت مایکروسافت برای تولید دینامیک صفحات در سمت سرور است. اولین بار به عنوان یک Add on همراه IIS در ویندوز NT4 عرضه شد. بعد از Windows 2000 Server به عنوان یکی از اجزای رایگان همراه آن بود. برنامه نویسی وب سایتهای ASP با اشیا درون ساخته همراه آن آسان تر شد.
هر شی عبارت است از گروهی از توابع پر کاربرد که برای خلق صفحات وب مفیدند. در ASP 2.0 شش نوع از چنین اشیای درون ساختهای وجود دارند: Application ،ASPError ،Request ،Response ،Server و Session.
به عنوان مثال Session یک شئی بر اساس کوکی است که متغییرها را صفحه به صفحه نگهداری می کند.
صفحات ASP را به کمک پسوند انتهای مسیر آنها می توان تمییز داد که به جای HTML و HTM از .asp استفاده میشود. اکثر صفحههای ASPبا VBScript نوشته می شوند ولی به کمک نوشتههای @language یا <script language="language" ="server"> میتوان به جای VbScript از سایر موتورهای پردازهنویسی فعال دیگر نیز استفاده کرد.
Awk یک مثال از یک زبان برنامه نویسی است که بطور وسیعی از نوع داده رشته استفاده میکند، آرایههای شرکت پذیر (آرایههایی هستند که اندیس دهی با رشتههای اصلی شدهاند)و عبارتهای منظم.قدرت، اختصار، ومحدودیتهای زبان awk وsed scripts الهام بخش Larry Wall در نوشتن Perl بود. بخاطر حاشیه نویسی انبوه آنها، همه این زبانها اغلب برای نوشتن برنامههای حاشیهای استفاده میشدند. Awk یکی از ابتداییترین ابزارهایی است که در Unix ورژن 7 ظاهر شدو به عنوان راهی برای اضافه کردن ویژگیهای محاسباتی به خط لوله Unix محبوبیت زیادی به دست آورد. یک ورژن از زبان awk یک ویژگی استاندارد تقریباً هر سیستمعامل جدید شبیه یونیکس که امروزه موجود است میباشد. awk ذکر کننده در مشخصه مجرد یونیکس به عنوان ابزار اجباری سیستمعامل یونیکس میباشد. علاوه بر این برنامه واسط Bourne shell ،awk تنها زبان دیگر اسکریپتی موجود در محیط استاندارد یونیکس میباشد پیاده سازی awk تقریباً به عنوان یک نرمافزار نصب شده برای تمامی سیستمعاملهای دیگر وجود دارد.
BEGIN { print "Hello, world!" }
ایفل استاندارد ، زبان برنامه نویسی شی گرا طراحی شده توسط برتراند میر (طرفداران شی گرا و نویسنده از ساخت نرم افزار شیء گرا ) و نرم افزار Eiffel طراحی شده است .طراحی در این زبان است که به دقت با استفاده از روش برنامه نویسی Eiffel متصل شده است .هر دو بر اساس مجموعه ای از اصول طراحی شده، از جمله توسط قرارداد، جداسازی به دستور پرس و جو ،دسترسی یکنواخت به اصل ، اصل انتخاب ،اصل باز و بسته ، و گزینه عملوند جدایی بسیاری از مفاهیم در ابتدا معرفی شده توسط Eiffel بعد راه خود را به جاوا، C # و زبان های دیگر را ، در بر داشت.ایده های طراحی زبان جدید ، به ویژه از طریق فرآیند استانداردسازی صورت پرفت.
ویژگی های کلیدی از زبان ایفل عبارتند از: ساختار شی گرا ، برنامه ای است که در آن یک کلاس به عنوان واحد اصلی تجزیه می باشد. طراحی شده توسط قرارداد محکم با ساختارهای زبان های دیگر یکپارچه شده است. مدیریت حافظه خودکار، به طور معمول با جمع آوری زباله اجرا شده است. توارث، از جمله ارث بری چندگانه، تغییر نام، تعریف، ""، عدم انطباق ارث، و مکانیزم های دیگر در نظر گرفته شده را به ارث امن را انتخاب کنید. برنامه نویسی عمومی محدود و غیراجباری یک سیستم نوع یکسان از دست زدن به هر دو ارزش و معانی مرجع که در آن همه نوع شامل انواع پایه مانند INTEGER، مبتنی بر کلاس. نوع دهی استاتیک از درجه اعتبار ساقط ایمنی، یا استاتیک حفاظت در برابر تماس در مراجع تهی، از طریق مکانیسم های پیوست شده نوع در Effel می باشد. عوامل، و یا اشیاء است که محاسبات بسته بندی کردن، از نزدیک حساب دیفرانسیل و انتگرال لامبدا متصل است. هنگامی که روال: روال ارزیابی تنها یک بار، برای به اشتراک گذاری شی و مقدار دهی اولیه غیر متمرکز است. کلید واژه مبتنی بر نحو در زبان الگول / پاسکال سنت اما جدا، تا آنجا که سمی کالن اختیاری هستند، با نحو اپراتور در دسترس برای روال. کوردلی مورد ساده و همزمان برنامه نویسی شی گرا (حرکت شبیه چمچه زنی) را تسهیل ایجاد چندگانه، وسایل نقلیه اعدام همزمان فعال در یک سطح انتزاع بالاتر از جزئیات خاص از این وسایل نقلیه (به عنوان مثال چندین موضوعات بدون مدیریت mutex های خاص).
اهداف طرح Eiffel بر اظهارات اخباری در مورد کد رویه و تلاش برای از بین بردن نیاز به دستورالعمل های حسابداری. Eiffel shuns حقه های برنامه نویسی و یا تکنیک های برنامه نویسی در نظر گرفته شده به عنوان نکات بهینه سازی برای کامپایلر. هدف این است که نه تنها به کد قابل خواندن است، اما همچنین به برنامه نویسان اجازه می دهد تا بر روی جنبه های مهم یک برنامه بدون نیاز به تمرکز در جزئیات پیاده سازی پرداخت. سادگی Eiffel در نظر گرفته شده است برای ترویج پاسخ ساده، توسعه، قابل استفاده مجدد و قابل اعتماد است به مشکلات محاسبات پرداخت.
بی سی پی ال در ابتدا با هدف نوشتن کامپایلر برای سایر زبانها طراحی شده بود، هم اکنون استفاده از بی سی پی ال معمول نمیباشد. اما هنوز تاثیر آن به خاطر زبان B احساس میشود، زبانی که زبان برنامه نویسی C روی آن پایه گذاری شدهاست.