زبان‌های برنامه‌نویسی در رایانه چه هستند؟
برنامه‌نویسی رایانه‌ای
چند مورد از زبان‌های برنامه‌نویسی: سی شارپ (#C)، سی (C)، ++C، پایتون (Python)، جاوا (Java)، جاوا اسکریپت (Java Script) و …؛ اینها فقط چند نمونه از زبان‌های برنامه‌نویسی هستند.
فهرست زبان‌های برنامه‌نویسی آموزشی
لیسپ دومین قدیمی‌ترین خانوادهٔ زبان‌های برنامه‌نویسی است که امروزه استفاده می‌شود. به همین دلیل دارای گویش‌ها و پیاده‌سازی‌های بسیاری با سختی‌های متفاوت است. لیسپ در اصل به عنوان یک نمادگذاری مفید ریاضیاتی برای برنامه‌های کامپیوتری براساس حساب لامبدا ساخته شده که این آن را به وسیلهٔ مناسبی برای تدریس نظریه‌های کامپیوتری تبدیل کرده‌است. به عنوان یکی از اولین زبان‌ها لیسپ پیشگام بسیاری از ایده‌ها در علوم کامپیوتر است. شامل ساختمان دادهٔ درخت، مدیریت حافظهٔ خودکار، نوع داده پویا، برنامه‌نویسی شی گرایی، کامپایلر خود میزبان. نام لیسپ از LISt Processing language گرفته شده‌است. لیست‌های پیوندی یکی از ساختمان داده‌های اصلی این زبان هستند و کد منبع لیسپ از تعدادی لیست تشکیل شده‌است. به این ترتیب برنامه‌های لیسپ می‌توانند کد منبع را به عنوان یک ساختمان داده دستکاری کنند؛ که به ماکروسیستم‌هایی می‌انجامند که به برنامه نویسان اجازه می‌دهد سینتکس یا حتی domain-specific languagesهای جدید درون لیسپ ایجاد کند. پس لیسپ‌ها برای یادگرفتن طراحی زبان و ساختن زبان‌های جدید مفیدند. یک مسیر معقول برای یادگیری لوگو و سپس هرکدام از نسخه‌های آموزشی مانند اسکیم یا newLISP و سپس یک نسخهٔ حرفه‌ای مانند Common LISP است. زبان توصیف سخت‌افزار
نرم‌افزار هدف در C و C ++ نوشته شده و برای سیستم توسعه میزبان به صورت محلی کامپایل می‌شود (به عنوان مخالف هدف CPU تعبیه شده، که نیاز به میزبان شبیه‌سازی از CPU جاسازی شده یا پردازنده شبیه‌سازی شده). سطح انتزاعی بالا از مدل‌های سیستمی C برای اکتشاف معماری اولیه بسیار مناسب هستند، به عنوان اصلاحات معماری می‌تواند به راحتی با کمی نگرانی برای مسائل پیاده‌سازی سطح سیگنال مورد بررسی قرار گیرد. به هرحال، مدل نخ مورد استفاده در System C و وابستگی آن به حافظه مشترک این معنی است که آن به خوبی اجرای موازی یا مدل‌های سطح پایین‌تر را اجرا نمی‌کند. کلاس (برنامه‌نویسی)
در زبان‌های رویه‌ای برنامه‌نویسی، مثل زبان سی (C)، برنامه‌نویسی، بیشتر عملگرایانه است. درحالی‌که، زبان‌های برنامه‌نویسی سی‌پلاس‌پلاس (++C)، جاوا (Java)، و سی‌شارپ (#C) دارای پارادایم شیءگرایانه هستند. واحد برنامه‌نویسی در زبان‌های رویه‌ای تابع است، ولی، زبان‌های شی گرا دارای کلاس‌ها - که اشیاء نهایتاً از آنها ایجاد می‌شوند (یا اصطلاحاً نمونه‌سازی می‌شوند) - به عنوان واحد برنامه‌نویسی هستند. توابع نیز در داخل کلاس‌ها به عنوان متدهایی پیاده‌سازی می‌شوند. معماری رایانه با زبان سطح بالا
مزیتی که پس از سال ۲۰۰۰ دوباره ظاهر می‌شود ایمنی یا امنیت است. جریان اصلی تا حد زیادی به زبان‌هایی با ایمنی نوع ویا حافظه برای اکثر برنامه‌ها منتقل شده‌است. نرم‌افزارهایی که از سیستم‌عامل گرفته تا ماشین‌های مجازی به آن‌ها وابسته هستند، از کدهای بومی بدون محافظت استفاده می‌کنند. آسیب‌پذیری‌های زیادی در چنین کدهایی یافت شده‌است. یک راه حل این است که از یک پردازنده سفارشی ساخته شده برای اجرای یک زبان سطح بالا ایمن یا حداقل درک انواع آن استفاده کنید. حفاظت در سطح کلمه پردازنده، کار مهاجمان را در مقایسه با ماشین‌های سطح پایین که هیچ تمایزی بین داده‌های اسکالر، آرایه‌ها، اشاره گرها یا کد نمی‌بینند، دشوار می‌کند. دانشگاهیان همچنین در حال توسعه زبان‌هایی با ویژگی‌های مشابه هستند که ممکن است در آینده با پردازنده‌های سطح بالا ادغام شوند. نمونه ای از هر دوی این روند است. سیستم‌های مبتنی بر زبان را مقایسه کنید، جایی که نرم‌افزار (مخصوصاً سیستم‌عامل) بر پایه یک زبان سطح بالا و ایمن است، اگرچه سخت‌افزار لازم نیست: «پایه مورد اعتماد» ممکن است همچنان به زبان سطح پایین‌تری باشد. نویسه‌نگاری وب
با تبدیل حروف سربی قدیمی به فونت‌های دیجیتالی درون محیط رایانه، اوایل فونت‌ها یا به‌طور کلی رایانه‌های آن دوران فقط از حروف A–Z و اعداد لاتین 0–9 پشتیبانی می‌کردند. فراگیری بیشتر رایانه‌ها از نیمهٔ دوم دههٔ ۱۹۹۰ میلای در سراسر جهان، این نیاز را توسط کاربران غیرانگلیسی‌زبان به‌وجود می‌آورد که رایانه‌ها از زبان‌های بیشتری پشتیبانی کنند. این دغدغه شرکت‌های کامپیوترساز را به تدوین استانداردهای مختلفی واداشت. این استانداردها به این صورت بودند که نویسه‌های یکسان زبان‌های با ریشهٔ مشترک را در یک صفحه می‌گنجاندند. صفحاتی که کدپیج نامیده می‌شدند. وجود همین امر، باعث به هم ریختگی متن و در نتیجه گیجی و سردرگمی کاربران می‌شد. مثلاً کسی که زبانش اردو بود و در محیط وب متنی به اشتراک می‌گذاشت، به دلیل یکسان بودن کد نویسه‌های زبان اردو با زبان فارسی یا عربی، نتیجهٔ نهایی که برای کاربران غیر اردو نمایش داده می‌شد، متنی به هم ریخته و بی‌معنی از حروف، نماد و عددهای فارسی بود. با بیشتر شدن این مشکلات، کنسرسیومی به نام یونی‌کد در سال ۱۹۹۱ میلادی برای ایجاد استانداردی یک‌پارچه با همین نام، برای تمامی زبان‌های مرده و زنده ایجاد شد. بیسیک
زبانهای برنامه‌نویسی مانند ماشینهایی که آن‌ها را اجرا می‌کردند باید طوری طراحی می‌شدند که برای اهداف مشخصی مفید باشند: مانند محاسبهٔ فرمول علمی یا پردازش داده‌های تجاری یا مثلاً ویرایش یک متن. از آنجایی که هنوز هم تهیه کامپیوترهای جدید و ارزانتر به سرمایه زیادی احتیاج داشت، تمایل شدیدی برای در نظر گرفتن کارایی به عنوان مهم‌ترین ویژگی یک زبان وجود داشت. به‌طور کلی استفاده از این زبان‌های تخصصی شده مشکل بود و سینتکسهای مختلف زیادی برای آن‌ها وجود داشت. دی (زبان برنامه‌نویسی)
زبان برنامه‌نویسی D، یک زبان شی گرا، امری و چندالگویی سیستمی است که توسط Walter Bright از Digital Mars طراحی و در سال ۲۰۰۱ منتشر شد. Bright توسط Andrei Alexandrescu در سال ۲۰۰۶ به تلاش توسعه و طراحی پیوست. با اینکه D مهندسی دوباره‌ای از سی پلاس پلاس است، کاملاً یک زبان جدا محسوب می‌شود؛ زیرا بسیاری از ویژگی‌های هسته سی پلاس پلاس را نگه داشته و بسیاری را دور ریخته‌است. در طراحی زبان دی همچنین از زبان‌هایی مانند پایتون، روبی، سی شارپ، ایفل و جاوا نیز الهام گرفته شده‌است. هدف طراحی زبان D ترکیب کارایی و امنیت زبان‌های کامپایلری، با قدرت زبان‌های پویای مدرن است. کد یک برنامه در زبان D شبیه به زبان سی پلاس پلاس است، اما کوتاه‌تر می‌باشد. برنامه رایانه‌ای
کلّی‌ترین دسته‌بندی زبان‌های برنامه‌نویسی، آن‌ها را به دو دستهٔ سطح بالا و سطح پایین تقسیم می‌کند. زبان‌های سطح بالا مستقل از پلتفرم هستند و در آن‌ها می‌توان از کلیدواژه‌های انگلیسی برای نوشتن برنامه استفاده کرد. به عبارت دیگر این زبان‌ها به توصیف مسائل به زبان انسان متمرکز هستند. در نقطهٔ مقابل زبان‌های سطح پایین مستقیماً به دستورهای پردازنده دسترسی دارند. معماری رایانه با زبان سطح بالا
از دهه ۱۹۸۰، تمرکز تحقیق و پیاده‌سازی در معماری‌های کامپیوتری همه منظوره عمدتاً در معماری‌های ریسک مانند بوده‌است، معمولاً معماری‌های ذخیره‌سازی بار-ذخیره‌ای غنی از ثبت داخلی، با موردهای نسبتاً پایدار و غیر اختصاصی زبان، دارای چندین ثب‌ها، خط لوله. و اخیراً سیستم‌های چند هسته ای، به جای زبان خاص. پشتیبانی زبان بر روی کامپایلرها و زمان اجرا آنها و مفسرها و ماشین‌های مجازی آنها (به ویژه ماشین‌ها) با پشتیبانی مستقیم سخت‌افزاری کمی متمرکز شده‌است. به عنوان مثال، زمان اجرا فعلی برای نشانگرهای برچسب‌گذاری شده را پیاده‌سازی می‌کند، که علیرغم اینکه سخت‌افزار یک معماری برچسب‌دار نیست، از آن‌ها برای بررسی نوع و جمع‌آوری زباله استفاده می‌کند. کدآکادمی
کدآکادمی نام وب‌سایت آموزشی‌ای است که زبان‌های مختلف برنامه‌نویسی را به شکل پولی و از طریق روش دوطرفه، به شکل پولی آموزش می‌دهد. زبان‌هایی که در حال حاضر در این سایت برای آموزش وجود دارند شامل این موارد است: پایتون، پی‌اچ‌پی، جی‌کوئری، جاوا اسکریپت و روبی. همچنین دروسی در رشته اچ‌تی‌ام‌ال و سی‌اس‌اس نیز ارائه شده‌اند. همچنین در کنار درس‌ها، انجمنی نیز برای سایت تعبیه شده که کاربران حرفه‌ای و مبتدی در این قسمت می‌توانند به بیان دیدگاه‌های خود پرداخته و در صورت لزوم سوالات و مشکلات را مطرح کنند. فهرست زبان‌های برنامه‌نویسی آموزشی
بیسیک که مخفف Beginners All-purpose Symbolic Instruction Code است زبانی است که در سال ۱۹۶۴ اختراع شد تا به دانشجویان غیر فنی دسترسی به کامپیوتر دهد. این زبان در دههٔ شصت روی مینی کامپیوترها محبوب شد و به زبان استاندارد برای میکروکامپیوترها در دههٔ ۷۰ و ۸۰ تبدیل شد. هدف‌های بیسیک روی یادگیری سادهٔ برنامه‌نویسی متمرکز شده بود: استفاده از آن برای تازه‌کارها ساده باشد، اینتراکتیو باشد، پیام‌های خطای واضح و دوستانه ساطع کند، سریع پاسخ دهد، و نیازی به فهم سخت‌افزار کامپیوتر یا سیستم عامل نداشته باشد. چیزی که بیسیک را به خصوص برای آموزش مفید کرد اندازهٔ کوچک برنامه‌ها بود. برنامه‌های مفید برای نشان دادن یک مفهوم را می‌شد در یک دوجین خط نوشت. در همین حال بیسیک نیازی به پیچیدگی‌های ریاضیاتی و کامپیوتری نداشت. بیسیک همچنان برای خودآموزی استفاده می‌شود. رجوع کنید به فهرست گویش‌های بیسیک بر اساس پلتفرم. بیسیک مسیری برای یادگیری ارائه می‌کند از oriented basicها مانند Microsoft Small Basic, BASIC-256 و SiMPLE تا بیسیک‌های پیچیده‌تر مانند Visual Basic .NET و Gambas.راه پیشنهادی Sun Microsystems از Greenfoot به BlueJ به Netbeans-BlueJ به Netbeans-Java است. برنامه رایانه‌ای
می‌توان برنامه‌ها را با توجّه به نوع زبان برنامه‌نویسی دسته‌بندی کرد. این دسته‌بندی می‌تواند بر اساس ویژگی‌های زبان یا نحوهٔ اجرا باشد برنامه‌نویسی رایانه‌ای
زبانهای برنامه‌نویسی دیداری متعددی با این منظور توسعه داده شده‌اند تا بتوانند از روش‌های غیر سنتی برای ارائه کد و تصویر استفاده کنند. محیطهای یکپارچه توسعه نرم‌افزار (IDEها) می‌خواهند تا تمام این گونه کمک‌ها را به شکل یکپارچه ارائه کنند. تکنیکهایی برای بازسازی کد می‌تواند خوانایی را افزایش دهد. زبان‌های برنامه‌نویسی محرمانه
اولین و هنوز یکی از مثال‌های استاندارد زبان INTERACAL است در سال ۱۹۹۲ توسط و طراحی شد که با زبانهای برنامه‌نویسی که کاربران معمول با آن آشنا هستند تفاوت‌هایی دارد. این زبان از قسمت‌هایی از زبان‌های برنامه‌نویسی تقلید می‌کند مانند زبان‌های فورترن، کوبول و زبان اسمبلی که از قسمت‌هایی از آن تقلید شده‌است. سابق بر این پیاده‌سازی INTERCAL با IBM System/360 بود و کامپیوترهای آتاری که بعد از آن به حیات خود ادامه نداد و بنابراین این زبان در برهه‌ای از میان رفت. احیاگران زبان در ۱۹۹۰ در جریان ساخت سیستم عامل یونیکس به وسیله زبان سی از یک زبان محرمانه استفاده کردند. در سال 1992 Wouter van Ootmerssen یک زبان برنامه‌نویسی مبتنی بر پشته را ابداع کرد که به‌طور ذاتی کدهای آن بسیار مبهم و ناخوانا بود اما نکته قابل توجه این بود که در این زبان از یک کامپایلر با ۱۰۲۴ بایت استفاده می‌شود اما با اصلاحاتی این زبان جز زبان‌های محرمانه محبوب شد نام این زبان brainfuck است. پی‌ال/۱
PL/I (زبان برنامه‌نویسی اول) یک زبان برنامه‌نویسی دستوری با قابلیت‌های علمی، مهندسی، تجاری است. این زبان جز زبان‌های دارای قابلیت‌های بسیار زیاد است و یکی از اولین زبان‌هایی است که در رده زبان‌های دارای ویژگی زیاد محسوب می‌گردد. این زبان به‌طور گسترده توسط دانشگاهیان، بازرگانی، و صنعتی از ابتدای معرفی این زبان در اوایل دهه ۱۹۶۰ به کار می‌رفته‌است و هم‌اکنون نیز این زبان فعال است. رایانه شیمیایی
این محیط عملیاتی یک پلتفرم نرم‌افزاری اکتشاف دارو می‌باشد که تصویرسازی، مدل‌سازی و شبیه‌سازی، و همچنین توسعهٔ متدولوژی، را در یک پکیج یکپارچه می‌کند. MOE روی سیستم عامل‌های ویندوز، لینوکس، یونیکس، و مَک کار می‌کند. زبان فرماندهی، برنامه‌نویسی و توسعهٔ نرم‌افزار MOE، زبان عملی برداری (Scientific Vector Language (SVL)) می‌باشد. با استفاده از این زبان، حجم کدنویسی نسبت به زبان‌های C و FORTRAN یک‌دهم می‌شود. زبان اسکریپت‌نویسی
در برخی از موارد زبان‌های برنامه‌نویسی محدودیت بیشتری نسبت به زبان‌های اسکریپت‌نویسی دارند. به‌طور مثال شما قادر به ایجاد و طراحی یک برنامه دسکتاپ یا تلفن همراه به وسیله زبان‌های برنامه‌نویسی نخواهید بود چرا که هیچگونه محیطی برای اجرای آن‌ها وجود ندارد. برای درک بهتر می‌توان PHP را مثال زد که از فریم‌ورک‌های آن نظیر وردپرس برای وب‌سایت‌ها یا برنامه‌های تحت وب استفاده می‌گردد. سی (زبان برنامه‌نویسی)
سی یک زبان برنامه‌نویسی از نوع همه‌منظوره، کامپایل‌شونده، سطح میانی، ساخت‌یافته، دستوری و روندگرا می‌باشد که در سال ۱۹۷۲ توسط دنیس ریچی در آزمایشگاه‌های بل ساخته شد. در سال ۱۹۶۷ مارتین ریچاردز زبان BCPL را برای نوشتن نرم‌افزارهای سیستم‌عامل و کامپایلر در دانشگاه کمبریج ابداع کرد. سپس در سال ۱۹۷۰ کن تامسون زبان B را بر مبنای ویژگی‌های زبان BCPL نوشت و از آن برای ایجاد اولین نسخه‌های سیستم‌عامل یونیکس در آزمایشگاه‌های بل استفاده کرد. زبان C در سال ۱۹۷۲ توسط دنیس ریچی از روی زبان B و BCPL در آزمایشگاه بل ساخته‌شد و ویژگی‌های جدیدی همچون نظارت بر نوع داده‌ها نیز به آن اضافه شد. ریچی از این زبان برای ایجاد سیستم‌عامل یونیکس استفاده کرد اما بعدها اکثر سیستم‌عامل‌های دیگر نیز با همین زبان نوشته‌شدند. این زبان با سرعت بسیاری گسترش یافت و چاپ کتاب "The C Programming Language" در سال ۱۹۷۸ توسط برایان کرنیگان و ریچی باعث رشد روزافزون این زبان در جهان شد. زبان اسکریپت‌نویسی
در واقع اسکریپت‌های اولیه برنامه‌های کوچکی بودند که به وسیله آن‌ها می‌شد برخی وظایف تکراری و پراستفاده یا یک وظیفه طولانی را به‌طور خودکار انجام داد. زبان‌های اسکریپت‌نویسی امروزه پیشرفت‌های زیادی کرده‌اند. آن‌ها در زمینه‌هایی چون کنترل وظایف و پوسته، واسط‌های گرافیکی کاربر، واژه‌پردازی، خدمت‌گزاران وب و خدمت‌گیرنده‌های وب استفاده می‌شوند. رایانه
برنامه‌سازی یا برنامه‌نویسی به نوشتن کدهایی از زبان برنامه‌نویسی خاصی گفته می‌شود. رایانه با کدها مانند فرمان عمل می‌کند و آنها را اجرا می‌کند. رایانه دستگاهی قابل برنامه‌نویسی است که کاربر با یادگیری زبان‌های برنامه‌نویسی (مانند: پایتون، جاوا، سی‌پلاس‌پلاس و…) می‌تواند به رایانه فرمان دهد. می‌تواند نرم‌افزاری را بنویسد و توسط رایانه آن را اجرا کند. برنامه‌نویسی رایانه‌ای
تعیین اینکه محبوب‌ترین زبان برنامه‌نویسی مدرن کدام است کار بسیار مشکلی است. بعضی از زبان‌ها در کاربردهای خاصی محبوب است و بعضی دیگر مرتباً در نوشتن کاربردهای گوناگون استفاده می‌شود. روش‌های اندازه‌گیری محبوبیت زبان شامل موارد زیر می‌باشد: شمردن تعداد آگهی‌های اشتغال و توجه به یک زبان، تعداد کتاب‌های آموزشی فروخته شده در مورد یک زبان، تخمین تعداد خطوط کد نوشته شده در یک زبان؛ که امروز می‌توان زبان برنامه‌نویسی پایتون و جاوا اسکریپت از محبوب‌ترین زبان‌های برنامه‌نویسی جهان دانستند؛ بخصوص پایتون که به دلیل سادگی و کارایی بالا در زمینه‌های مختلف افراد زیادی رو به خود جذب کرده. علم اطلاعات و کامپیوتر
برای فرایند گرفتن الگوریتم داده شده و رمزگذاری آن به زبانی که توسط کامپیوتر قابل فهم و اجرا باشد، انواع مختلف زیادی زبان برنامه‌نویسی و رایانه وجود دارد، با این حال، هدف همه آنها یکسان است: تبدیل الگوریتم‌ها به کد ماشین. زبان برنامه‌نویسی تصویری
زبان برنامه‌نویسی تصویری (ویژوال) (VPL = Visual Photo Language) به آن دسته از زبان‌های برنامه‌نویسی گفته می‌شود که روند برنامه‌نویسی در آن‌ها به جای اینکه به صورت متنی باشد، به صورت تصویری است. در برنامه‌نویسی تصویری از عبارات تصویری و نمادهای گرافیکی برای برنامه‌نویسی استفاده می‌شود. بیشتر زبان‌های برنامه‌نویسی تصویری بر پایه ایده "جعبه‌ها و پیکان‌ها" هستند. در این روش از جعبه‌هایی به عنوان اشیای صفحه‌ای و پیکان‌ها یا خطهایی برای ارتباط دادن این جعبه‌ها به هم استفاده می‌شود. از مهم‌ترین زبان برنامه‌نویسی تصویری می‌توان به زبان برنامه نویسی اسکرچ اشاره کرد که برای کودکان به صورت رایگان در سال 2007 عرضه شده. علوم رایانه
زبان انگلیسی به عنوان زبان پیشفرض (default) در سیستم عامل‌ها، زبان‌های برنامه نویسی، موتورهای بازی‌سازی، نرم‌افزارها و سخت‌افزارها است و اکثر منابع بروز نیز به زبان انگلیسی انتشار میابند و بعد وارد زبان‌های دیگر می‌شوند. همچنین اکثر کارآفرینان و برنامه نویسان مطرح جهان، از کشورهای آنگلوسفر بوده یا بعنوان زبان دوم، به زبان انگلیسی مسلط اند. اکثر شرکت‌های مهم علوم رایانه در کشور ایالات متحده هستند و مبنای زبان آنها، انگلیسی است. حتی شرکت‌هایی در کشورهای غیرانگلیسی زبان نیز، برند تجاری و محصول خود را به زبان انگلیسی ارائه می‌دهند. همچنین اکثر دوره‌ها، وبگاه‌های آموزشی و تالارهای گفتگو قدرتمند در زمینه آموزش علوم مختلف رایانه، به زبان انگلیسی اند. منابع آموزشی فارسی، حجم بسیار کمی نسبت به زبان انگلیسی دارند. زبان برنامه‌نویسی
«پردازنده‌های زبان طبیعی» به عنوان راهی برای ازبین بردن نیاز به زبان‌های اختصاصی برنامه‌نویسی پیشنهاد شده‌اند. هرچند، این هدف دور است و فواید آن قابل بحث است. «ادسگر دیجسترا» موافق بود که استفاده از یک زبان رسمی برای جلوگیری از مقدمه‌سازی ساختارهای بی‌معنی واجب است، و زبان برنامه‌نویسی طبیعی را با عنوان «احمقانه» رد کرد، «آلن پرلیس» نیز مشابهاً این ایده را رد کرد. مطابق با متدولوژی نامتجانس استفاده شده توسط langpop.com در سال ۲۰۰۸، ۱۲ زبان پرکاربرد عبارتند از: C, C++, C#, Java, JavaScript, Perl, PHP, Python, Ruby, Shell, SQL, and Visual Basic زبان انگلیسی
شامل علوم مختلف پیرامون رایانه‌ها است. زبان انگلیسی به عنوان زبان پیشفرض (default) در سیستم عامل‌ها، زبان‌های برنامه‌نویسی، موتورهای بازی‌سازی، وبگاه‌ها، مکان‌یاب منبع یکسان، نرم‌افزارها و سخت‌افزارها است و بیشتر منابع بروز نیز به زبان انگلیسی انتشار میابند و بعد وارد زبان‌های دیگر می‌شوند. همچنین بیشتر کارآفرینان و برنامه نویسان مطرح جهان، از کشورهای آنگلوسفر بوده یا بعنوان زبان دوم، به زبان انگلیسی مسلط اند. بیشتر شرکت‌های مهم علوم رایانه در کشور ایالات متحده هستند و مبنای زبان آنها، انگلیسی است. حتی شرکت‌هایی در کشورهای غیرانگلیسی زبان نیز، برند تجاری و محصول خود را به زبان انگلیسی ارائه می‌دهند. همچنین بیشتر دوره‌ها، وبگاه‌های آموزشی و تالارهای گفتگو قدرتمند در زمینه آموزش علوم مختلف رایانه، به زبان انگلیسی اند. منابع آموزشی فارسی، حجم بسیار کمی نسبت به زبان انگلیسی دارند. بیشتر ویدئوهای مربوط به علوم رایانه در وبگاه یوتیوب، توسط یوتیوبرهای هندی با لهجه انگلیسی هندی تولید می‌شوند. همچنین در آمار تعداد بازدیدها و دنبال کنندگان یوتیوب برپایه کشورها، هند بعداز ایالات متحده؛ جایگاه دوم را داراست. مدیرعامل اپل، تیم کوک به تازگی در مصاحبه ای بیان کرد که فکر می‌کند یادگیری زبان برنامه‌نویسی حتی از یادگیری زبان انگلیسی نیز مهم‌تر است. زبان برنامه‌نویسی پویا
پویاترین زبان‌ها نیز از نوع پویا می‌باشند، اما نه همه آنها. زبان‌های پویا اغلب (اما نه همیشه) به عنوان «زبان‌های اسکریپت‌نویسی» شناخته می‌شود، اگر چه اصطلاح «زبان‌های اسکریپت‌نویسی» در مفهوم دقیق‌تر اشاره به زبان خاص به یک محیط زمان اجرا دارد. زبان برنامه‌نویسی
زبان‌های برنامه‌نویسی ساختارهای زبانی دستور مداری در رایانه‌ها هستند که به‌وسیلهٔ آن‌ها می‌توان یک الگوریتم را به‌وسیلهٔ ساختارهای دستوری متفاوت برای اجرای رایانه توصیف کرد و با این روش امکان نوشتن برنامه جهت تولید نرم‌افزارهای جدید به وجود می‌آید. معمولاً هر زبان برنامه‌نویسی دارای یک محیط نرم‌افزاری برای وارد کردن متن برنامه، اجرا، همگردانی و رفع اشکال آن هستند. سی (زبان برنامه‌نویسی)
در اواخر دهه ۱۹۷۰ و ۱۹۸۰، نسخه C برای طیف گسترده‌ای از رایانه‌های اصلی، مینی رایانه و میکرو رایانه‌ها از جمله IBM PC پیاده‌سازی شد، زیرا محبوبیت آن به میزان قابل توجهی افزایش یافت. برنامه‌نویسی رایانه‌ای
تکنیک‌های اجرای شامل زبان‌های ضروری (شی گرا یا رویه ای)، زبان‌های کاربردی و زبان‌های منطقی است. اسکیم (زبان برنامه‌نویسی)
2- mit ۶٬۰۰۱ قدیمی در این طرح آموزش داده شده. هر چند ۶٬۰۰۱ با دوره‌های جدید تر جایگزین شد، اما هنوز sicp آموزش به زبان mit را ادامه می‌دهد. کتاب دو چگونه برنامه‌ها را طراحی کنیم (با نویسندگی مایتاس فلیس) به وسیلهٔ چندین مؤسسه آموزش عالی برای دوره‌های علوم کامپیوتری مقدماتی آن‌ها به کار برده می‌شود. هم دانشگاه فورس استرن و هم مؤسسه ورسسترپلی تکنیک از این طرح به‌طور انحصاری برای دوره‌های مقدماتی «اصول علوم کامپیوتری» و مقدمه‌ای برطراحی برنامه استفاده می‌کنند رز_هولمان از این طرح در دوره مفاهیم زبان برنامه‌نویسی پیشرفته تر استفاده می‌کند. مایکروسافت ویژوال استودیو
ویژوال استودیو از ۳۶ زبان برنامه‌نویسی پشتیبانی می‌کند و تقریباً قابلیت ویرایش و اشکال‌زدایی را برای تمام زبان‌های برنامه‌نویسی (به شرط وجود سرویس مناسب برای آن زبان) فراهم می‌کند. زبان‌های پیش‌فرض پشتیبانی شده شامل: C, C++‎، C++/CLI، VB.NET، C#، F#، TypeScript، XML، JavaScript، XSLT، HTML ،python، CSS و java می‌باشند. زبان اسکریپت‌نویسی
با پدید آمدن واسط کاربری گرافیکی، یک نوع بخصوص از زبان اسکریپت‌نویسی برای کنترل یک رایانه پدید آمد. این زبان‌ها با گرافیک‌های مشابه با پنجره، منو، دکمه و غیره که انسان‌ها با آن کار می‌کنند، تعامل داشتند. MinGW
برخی از زبان های برنامه نویسی سطح بالا به صورت کامپایلری هستند که برنامه های نوشته شده برای سیستم قابل فهم نیستند به همین خاطر برای ترجمه برنامه های نوشته شده به زبان ماشین باید از کامپایلر استفاده نمود. برخی از کامپایلرهای ++C/C که در زیر برخی از آنها لیست شده است: پی‌ال/۱
با وجود عدم موفقیت گسترده این زبان در تمام سیستم‌های معمول در سال ۱۹۷۰ نمی‌توان از موفقیت آن در جزایر جداگانه تشکیل شده توسط سیستم‌های گوناگون گذشت نمود. این زبان کابردهای مهمی در پردازش داده‌های تجاری و کاربردهای معمولتر همانند نوشتن سیستم‌عامل‌های جدید داشت و PL/M که توسط اینتل ایجاد شد برای نوشتن سیستم‌عامل CP/M به کار رفت و این زبان به عنوان زبان اصلی تولید برنامه‌های اجرا شده در سیستم‌عامل‌های CP/M و MP/M به کار می‌رفت. دیجیتال ریسرچ کامپایلری که خود توسط PL/M نوشته شده بود برای زبان PL/I ارائه نمود. در سال‌های ۱۹۷۰ این زبان برای نوشتن بیشتر برنامه‌های اجرا شده بر ۸۰۸۰، ۸۰۸۵ ،Z۸۰ به کار می‌رفت. سیستم SAS توسط PL/I نوشته شد و هم‌اکنون داده‌های SAS توسط دستورهایی همانند PL/I نوشته می‌شود. XPL که زیرمجموعه‌ای از PL/I است برای نوشتن HAL/S در شاتل‌های فضایی مورد استفاده قرار گرفت. PL/P زیرمجموعه دیرگ این زبان برای نوشتن بخش‌های جدید پریموس در تمامی حلقه‌های دفاعی این به کار رفت. کامپایلر CORC که توسط دانشگاه کرنل نوشته شده بود و زیرمجموعه دیگری به نام PL/C را با استفاده از آن تدریس می‌نمودن قابلیت جالبی در کامپایل تمام برنامه‌ها بدون شکست داشت. این کامپایلر تمام اشکالات معمول را اصلاح می‌نمود و بقیه خطاها را نیز به عنوان خروجی‌هایی نمایش می‌داد. زبان برنامه‌نویسی
اگرچه بیشترین زبان‌های برنامه‌نویسی متداول دارای مشخصات و پیاده‌سازی‌های کاملاً باز هستند، بسیاری از زبان‌های برنامه‌نویسی فقط به عنوان زبان‌های برنامه‌نویسی اختصاصی با اجرای فقط از یک فروشنده منفرد موجود هستند، که ممکن است ادعا کنند چنین یک زبان اختصاصی خاصیت معنوی آنها است. زبان‌های برنامه‌نویسی اختصاصی معمولاً زبان‌های خاص دامنه یا زبان‌های برنامه‌نویسی داخلی برای یک محصول واحد هستند. برخی از زبان‌های اختصاصی فقط در داخل یک فروشنده استفاده می‌شوند، در حالی که برخی دیگر در دسترس کاربران خارجی است. پاسکال (زبان برنامه‌نویسی)
نیکلاوس ورث پیش از پاسکال و برای فراهم‌آوری مقدمات آن، زبان Euler و سپس Algol-W را گسترش داد و سپس زبان‌های Modula-2 و Obern که همانند پاسکال بودند را ساخت. در زمان اختراع پاسکال، زبان‌های برنامه‌نویسی بسیار زیادی وجود داشت ولی تنها شماری از آن‌ها بسیار استفاده می‌شدند که عبارت بودند از Fortran, Assembler و Cobol. ایدهٔ اصلی زبان جدید نظم، مدیریت داده‌ها و نیاز به تعریف داده‌ها بود. این زبان از آغاز به گونه‌ای طراحی شده بود که زبانی آموزشی باشد. در آغاز پاسکال بسیار وسیع و جامع بود، اما تنها به منظور یاد دادن برنامه‌نویسی ساخت‌یافته به دانشجویان نبود. نسل‌های پیاپی از دانشجویان بر روی پاسکال به عنوان یک زبان آغازین در دوره‌های کارشناسی کار کردند. همچنین نسخه‌های گوناگونی از پاسکال پی‌درپی برای هر کاری از پروژه‌های تحقیقاتی گرفته تا بازی‌های رایانه‌ای و سیستم‌های جاسازی‌شده‌استفاده شد. هم‌اکنون کامپایلرهای تازه‌تر پاسکال موجود هستند که به‌طور گسترده استفاده می‌شوند. پاسکال نخستین زبان سطح بالا بود که برای توسعه و تکامل در Apple Lisa استفاده شد و در سال‌های نخستین Mac، بخش‌هایی از سیستم عامل اصلی مکینتاش، از منابع پاسکال توسط دست به زبان اسمبلی 68000 Motorola برگردان شد. حروف‌چینی محبوب سیستم TeX توسط Donald E.Knuth در WEB (سیستم برنامه‌نویسی آموزش دیده اصلی) نوشته شد، که بر پایهٔ DEC PDP-10 Pascal است، آن هم در هنگامی که یک برنامه کاربردی مانند Total Commander در Delphi (پاسکال شی گرا) نوشته شد. پاسکال نیز مانند بسیاری از زبان‌های برنامه‌نویسی دیگر دارای کامپایلرهای زیادی است که از معروف‌ترین آن‌ها می‌توان به کامپایلر توربو پاسکال (Turbo Pascal) که متعلق به شرکت بورلند (Borland) است، اشاره کرد. شرکت بورلند از پاسکال شیءگرا به‌عنوان زبان برنامه‌نویسی محیط توسعهٔ نرم‌افزار خود به نام دلفی بهره گرفته‌است. توربو پاسکال در سال ۱۹۸۳ معرفی شد و همیشه در بین زبان‌های برنامه‌نویسی از فروش بسیار بالایی برخوردار بود. توربو پاسکال مفهوم تازه‌ای به نام Integrated Development Environment یا (IDE) به معنای «محیط برنامه‌نویسی مجتمع» را معرفی کرد. در محیط IDE شما می‌توانید کد را ویرایش کنید (در یک ویرایشگر هماهنگ با wordstar)، کامپایلر را آغاز کنید، خطاها را ببینید و به خط‌هایی که حاوی آن خطاهاست بروید، البته این مسئله هم‌اکنون بسیار بی‌معنی به نظر می‌آید، اما در گذشته لازم بود که شما از ویرایشگر بیرون بروید و به DOS برگردید و سپس کامپایلر را به صورت خط فرمانی آغاز کنید، سپس شماره خطاهای خط را یادداشت کنید، دوباره ویرایشگر را باز کنید و به خط‌های حاوی خطا بروید و دوباره همه چیز را از اول انجام دهید. زبان برنامه‌نویسی فورث
دو بازی رایانه ای که الکترونیک آرتس، در دهه ۱۹۸۰ منتشر کرده‌است، "Worms" (1983) و "Starflight" (1986). توسط این زبان نوشته شده‌اند شرکت آتاری برای نمایش توانایی‌های رایانه‌های خانواده ۸ بیتی آتاری در فروشگاه‌ها از یک نسخهٔ نمایشی که توسط زبان Forth نوشته شده بود استفاده کرد. زبان اسمبلی
همواره بحث‌هایی دربارهٔ کاربردی بودن و نمایش زبان اسمبلی در مقابل زبان‌های سطح بالا بوده‌است. اگرچه در جایگاه‌های مخصوصی که اهمیت دارند، زبان اسمبلی استفاده می‌شود (بالا را مشاهده کنید)، اما ابزارهای دیگری برای بهینه‌سازی وجود دارند. در ژوئیه ۲۰۱۷ شاخص تیوبی رتبهٔ محبوبیت زبان برنامه‌نویسی، زبان اسمبلی در رتبهٔ ۱۱ بالاتر از مثلاً ویژوال بیسیک بود. اسمبلر می‌تواند برای بهینه‌سازی سرعت یا بهینه‌سازی اندازه استفاده شود. در حالت بهینه‌سازی سرعت، کامپایلرهای بهینه‌ساز مدرن مدعی می‌شوند که زبان‌های سطح بالا را به کدهایی تبدیل می‌کنند که می‌توانند به سرعت اسمبل با دست نوشته شده اجرا شوند، گرچه مثال‌های خلاف هم می‌توانند پیدا شوند. پیچیدگی پردازنده‌های مدرن و سیستم‌های فرعی حافظه‌ها، بهینه‌سازی مؤثر را به‌طور افزاینده ای برای کامپایلر و همچنین برای برنامه نویسان اسمبلی سخت می‌کنند. علاوه بر این افزایش نمایش پردازنده‌ها به این معنی است که بیشتر سی پی یوها بیشتر مواقع بی فایده مانده‌اند، با تأخیرهایی که به خاطر تنگه‌های قابل پیش‌بینی مانند از دست دادن حافظهٔ پنهان، عملیات‌ها و صفحه بندی I/O رخ داده‌است. همین، سرعت اجرای کد خام را برای بسیاری از برنامه نویسان بی‌اهمیت کرده‌است. در اینجا تعدادی موقعیت وجود دارد که احتمالاً توسعه دهندگان انتخاب بکنند تا از زبان اسمبلی استفاده بکنند. زبان اسمبلی هنوز در بسیاری از برنامه‌های [[مهندسی الکترونیک|مهندسی برق]] و [[علوم رایانه|علوم کامپیوتر]] آموزش داده می‌شود. اگرچه تعداد کمی از برنامه نویسان امروزه معمولاً با زبان اسمبلی به عنوان ابزار کار می‌کنند، اما مفاهیم اصولی بااهمیت باقی می‌مانند. مفاهیم ابتدایی از جمله اعمال ریاضی در اعداد دو دویی، اختصاص حافظه، پردازش پشته، کدگذاری مجموعهٔ کاراکترها، قطع شدن پردازش و طراحی کامپایلر که مطالعه در تفاصیل آن‌ها بدون فهمیدن اینکه یک کامپیوتر چگونه در سطح سخت‌افزار عمل می‌کند، سخت خواهد بود. از زمانی که رفتار کامپیوتر، به شکل ابتدایی به وسیلهٔ مجموعهٔ دستور العمل‌هایش تعریف می‌شود، راه منطقی برای یادگرفتن چینن مفهوم‌هایی، مطالعهٔ که یک زبان اسمبلی است. بیشتر کامپیوترهای مدرن مجموعهٔ دستور العمل‌های مشابه دارند؛ بنابراین مطالعهٔ تنها یک زبان اسمبلی کافی است برای یادگیری: I) مفاهیم پایه؛ II) تشخیص موقعیت‌هایی که استفاده از زبان اسمبلی می‌تواند مناسب باشد؛ III) دیدن اینکه چه مقدار کد قابل اجرای کارآمد از یک زبان سطح بالا می‌تواند ساخته شود. زبان برنامه‌نویسی نسل پنجم
در حالی که زبان برنامه‌نویسی نسل چهارم برای ساخت برنامه‌هایی خاص طراحی شده‌است، زبان‌های نسل پنجم طراحی شده‌اند تا کامپیوتر یک مسئلهٔ داده شده را بدون نیاز به برنامه‌نویس حل کند. به این ترتیب، کاربر تنها می‌بایست بر روی این‌که چه مسائلی باید حل شود و چه شرایطی باید برآورده شود، بدون نگرانی در مورد چگونگی پیاده‌سازی یک روال یا الگوریتم برای حل آن مسائل، متمرکز شود. زبان نسل پنجم به‌طور عمده در تحقیقات هوش مصنوعی استفاده می‌شود. اوپی‌اس۵ و مرکوری نمونه‌هایی از زبان‌های نسل پنجم می‌باشد. مقایسه زبان‌های برنامه‌نویسی
در حال حاضر هزاران زبان برنامه‌نویسی وجود دارد و هر سال زبان‌های جدیدی نیز خلق می‌شوند. معمولاً تعداد کمی از این زبان‌ها به اندازه‌ای از محبوبیت دست می‌یابند که مورد استفادهٔ افراد زیادی قرار بگیرند؛ اما برنامه‌نویسهای حرفه‌ای ممکن است در فعالیت حرفه‌ای خود از چندین زبان استفاده کنند. رایانه
دستورالعمل‌ها در داخل رایانه به صورت اعداد مشخص شده‌اند - مثلاً کد دستور العمل (copy instruction) برابر ۰۰۱ می‌تواند باشد. مجموعه معین دستورالعمل‌های تعریف شده که توسط یک رایانه ویژه پشتیبانی می‌شود را زبان ماشین می‌نامند. در واقعیت، اشخاص معمولاً به زبان ماشین دستورالعمل نمی‌نویسند بلکه بیشتر به نوعی از انواع سطح بالای زبان‌های برنامه‌نویسی، برنامه‌نویسی می‌کنند تا سپس توسط برنامه ویژه‌ای (تفسیرگرها (interpreters) یا همگردان‌ها (Compilers) به دستورالعمل ویژه ماشین تبدیل گردد. برخی زبان‌های برنامه‌نویسی از نوع بسیار شبیه و نزدیک به زبان ماشین که اسمبلر (یک زبان سطح پایین) نامیده می‌شود، استفاده می‌کنند؛ همچنین زبان‌های سطح بالای دیگری نیز مانند پرولوگ نیز از یک زبان انتزاعی و چکیده که با زبان ماشین تفاوت دارد به جای دستورالعمل‌های ویژه ماشین استفاده می‌کنند. برنامه‌نویسی استقرایی
بسته به زبان برنامه‌نویسی مورد استفاده، چندین نوع برنامه‌نویسی استقرایی وجود دارد، برنامه‌نویسی تابعی استقرایی، که می‌توان از زبان‌های برنامه‌نویسی تابعی مانند Lisp و Haskell نام برد، برنامه‌نویسی منطقی استقرایی، که از زبان‌های برنامه‌نویسی منطقی مانند Prolog و دیگر نمایش‌های منطقی مانند منطق توصیفی زبان برنامه‌نویسی
ویژگی‌هایی که غالباً برای تشکیل یک زبان برنامه‌نویسی مهم شمرده می‌شوند: برخی مؤلفین اصطلاح «زبان برنامه‌نویسی» را محدود به آن‌هایی می‌کنند که می‌توانند تمام الگوریتم‌های ممکن را پیاده‌سازی کنند، گاهی اوقات اصطلاح «زبان رایانه» برای زبان‌های برنامه‌نویسی محدودتر به کار می‌رود. زبان‌های غیر محاسباتی، مانند زبان‌های مارک آپ (markup) HTML یا گرامرهای قراردادی مثل BNF، معمولاً زبان برنامه‌نویسی محسوب نمی‌شوند. یک زبان برنامه‌نویسی (که می‌تواند کامل تورینگ نباشد) ممکن است در این زبان‌های غیر محاسباتی (میزبان) تعبیه شوند. برنامه‌نویسی رایانه‌ای
زبان‌های برنامه‌نویسی گوناگون براساس قابلیت‌های در نظر گرفته شده از شیوهٔ خط‌های مختلف استفاده می‌کنند. موارد ریزتری مانند چگونگی برخورد با نیازهای پشت پردهٔ ماشین مانند مدیریت حافظه و مدیریت زباله نیز در زبان‌های مختلف متفاوت است. علاوه بر این‌ها، مفاهیمی متفاوت از (اجرای) یک برنامه تصور شده‌اند که پارادایم یا الگو نام دارند. زبان برنامه‌نویسی وبگاه‌های بزرگ
وب‌سایت‌ها برای توسعه به زبان برنامه‌نویسی نیاز دارند. زبان برنامه‌نویسی برای طراحی وب دارای دو بخش است: بخش اول سمت کاربر (Front-end) که برای طراحی ظاهر وبگاه و تعیین موقعیت قرار گرفتن عناصر بر روی صفحه استفاده می‌شود و در واقع آن قسمتی از سایت است که توسط کاربر مشاهده می‌شود. سی‌پی‌ال (زبان برنامه‌نویسی)
CPL مشترکاً توسط آزمایشگاه ریاضیات دانشگاه کمبریج و همچنین واحد رایانه ای دانشگاه لندن , در طول دههٔ ۱۹۶۰ توسعه یافت . از این رو CPL نام مستعار "کمبریج بعلاوه ی لندن" را به دست آورد . تلاش مشترک این دو بیشتر برای قسمتِ "ترکیب شده" در نامِ زبان بود. (قبلاً نام زبان،زبان برنامه‌نویسی کمبریج بود.) D.W. Barron و Christopher Strachey درگیر این پروژه بودند. در سال ۱۹۶۳ (زمانی که مقاله منتشر شد) این پروژه به‌طور همزمان در کامپیوتر تیتان , Titan Computer , در کمبریج و کامپیوتر اطلس , Atlas Computer ، در لندن پیاده‌سازی شد. این زبان از زبان الگول ۶۰ بسیار تأثیر می پذیرفت، ولی به جای اینکه خیلی کوچک ، کارا ، کم دستور و ساده باشد ، نامزد داشتن زمینه‌های کاربردی گسترده تری نسبت به محاسبات علمی بود . بنابراین CPL زبانی بسیار پیچیده بود و به کاراییِ زبان الگول ۶۰ نبود. CPL در زمان خود , زبان بزرگی بود . CPL تلاش کرد تا از زبان الگول فراتر برود تا بتواند علاوه برداشتن ویژگی‌های زبان الگول شامل کنترل فرایندهای صنعتی و پردازش داده‌های تجاری نیز باشد . CPL همچنین تلاش داشت تا هم به برنامه‌های سطح پایین و هم داده‌های انتزاعی سطح بالا اجازه دهد که از یک زبان مشترک استفاده کنند. اگرچه زبان CPL بسیار آهسته به مرحلهٔ پیاده‌سازی رسید , ولی اولین کامپایلر زبان احتمالاً در سال ۱۹۷۰ نوشته شده‌است . ولی این زبان هیچ گاه محبوبیت چندانی کسب نکرد و به نظر می‌رسد که در سال ۱۹۷۰ بدون هیچ اثری ناپدید شد. زبان بعدی که بر پایهٔ زبان CPL نوشته شد ، بی‌سی‌پی‌ال نامیده شد (این نام برگرفته از "Basic CPL" به معنای بر اساس CPL می‌باشد ، اگرچه در اصل مخفف "Bootstrap CPL" به معنای CPL خودراه انداز بود.) BCPL زبان ساده تری می‌باشد و مشخصاً نامزد زبان برنامه‌نویسی سیستم مانند نوشتن کامپایلر بود. BCPL بعدها درخشید ، توسط زبان برنامه‌نویسی B , به سوی زبان برنامه‌نویسی مشهور و با نفوذ C پیش رفت. مقایسه زبان‌های برنامه‌نویسی
اکثر زبان‌های برنامه‌نویسی بر پایه معیارهای بین‌المللی (یا ملی) استانداردسازی نمی‌شوند، حتی برخی از آن‌ها مانند پرل یا استاندارد ام‌ال که کاربرد زیادی هم دارند. از جملهٔ زبان‌های برنامه‌نویسی استانداردشده و سرشناسی می‌توان به الگوا، سی، سی++، جاوااسکریپت (تحت نام اکما اسکریپت)، اسمال‌تاک، پرولوگ، لیسپ معمولی، اسکیم (استاندارد آی-تریپل-ئی)، ایدا، فورتون، کوبول، اس‌کیوال و اکس‌کوئری اشاره کرد. زبان برنامه‌نویسی
وب سایت stackify.com با تلفیق و میانگین اطلاعات از سایت‌های مختلف اینترنتی، ده زبان محبوب برنامه‌نویسی را به صورت زیر گزارش داد: زبان برنامه‌نویسی آرایه‌ای
زبانهای برنامه‌نویسی مدرن که برنامه‌نویسی آرایه ای را پشتیبانی می‌کنند. (همچنین به عنوان زبانهای چند بعدی و برداری شناخته می‌شوند) فهرست زبان‌های برنامه‌نویسی آموزشی
تعداد زیادی از زبان‌های برنامه‌نویسی آموزشی خودشان را در مسیر آموزشی قرار داده‌اند، ب این معنی که، دنباله‌ای از زبان‌ها که برای ساختن حرکات دیگر یک دانش آموز از آسان تا درک و محیط سرگرم‌کننده، تا محیط‌های محیط‌های کامل حرفه‌ای طراحی شده‌است. چند مورد از آن‌ها که بهتر شناخته شده‌اند، در زیر آمده‌اند. برنامه‌نویسی آرایه‌ای
زبان‌های برنامه‌نویسی مدرن که از برنامه‌نویسی آرایه‌ای پشتیبانی می‌کنند (که به نام زبان‌های برداری یا چندبعدی هم شناخته می‌شوند) بخصوص برای تعمیم عملیات روی اسکالرها مهندسی شده‌اند، تا به صورت شفاف و غیر محسوس روی بردارها، ماتریس‌ها و آرایه‌های با بعد بالاتر اعمال شوند. ویژوال‌ایج
اینها زبانهای پشتیبانی شده کلی هستند که بسته به سیستم عامل به‌طور متنوعی در دسترس هستند: BASIC، COBOL، C , C++، EGL، Fortran، Java , ، PL/I، IBM RPG و Smalltalk. برنامه‌نویسی رایانه‌ای
بسیاری از زبان‌های برنامه‌نویسی مکانیسم‌هایی را برای تماس با توابع ارائه شده توسط کتابخانه‌های مشترک فراهم می‌کنند. مشروط بر اینکه توابع موجود در یک کتابخانه از کنوانسیون‌های زمان اجرا مناسب پیروی کنند (مثلاً روش گذراندن آرگومان‌ها)، ممکن است این توابع به هر زبان دیگری نوشته شود. روبی (زبان برنامه‌نویسی)
همچنین، روبی انجمن‌های فعال و گسترده‌ای برای کمک به علاقه‌مندان به این زبان دارد. در ایران نیز انجمن IranOnRails فعال‌ترین انجمن فارسی‌زبان روبی و همچنین [[روبی آن ریلز]] است. [[رده:روبی (زبان برنامه‌نویسی)]] [[رده:استانداردهای ایزو]] [[رده:زبان‌های اسکریپت‌نویسی]] [[رده:زبان‌های برنامه‌نویسی دارای استاندارد ایزو]] [[رده:زبان‌های برنامه‌نویسی ساخته‌شده در ۱۹۹۵ (میلادی)]] [[رده:زبان‌های برنامه‌نویسی شیءگرا]] [[رده:زبان‌های برنامه‌نویسی کلاس محور]] [[رده:زبان‌های برنامه‌نویسی ماشینی پویا]] [[رده:کامپایلرها و مفسرهای آزاد]] [[رده:نرم‌افزارهای آزاد نوشته‌شده با سی]] [[رده:نرم‌افزارهایی که از پروانه بی‌اس‌دی استفاده می‌کنند]] [[رده:زبان‌های برنامه‌نویسی متن‌گرا]] [[رده:اختراع‌های ژاپنی]] زبان برنامه‌نویسی
فرم سطحی یک زبان برنامه‌ نویسی دستور آن نامیده می‌شود. بیشتر زبان‌ های برنامه‌ نویسی کاملاً متنی‌اند؛ و از دنبالهٔ متون شامل واژگان، اعداد و نشان‌گذاری‌های بسیار شبیه زبان نوشتاری طبیعی استفاده می‌کنند. از طرف دیگر، برنامه‌هایی نیز وجود دارند که بیشتر گرافیکی‌اند، و از روابط بصری بین سمبل‌ها برای مشخص کردن برنامه استفاده می‌کنند. دستور یک زبان، ترکیبات ممکن سمبل‌ها برای ایجاد یک برنامهٔ درست را از نظر دستوری مشخص می‌کند. معنایی که به یک ترکیب سمبل‌ها داده می‌شود با معناشناسی اداره می‌شود (قراردادی یا نوشته شده در پیاده‌سازی منبع). از آنجا که بیشتر زبان‌ها متنی هستند، این مقاله دستور متنی را مورد بحث قرار می‌دهد. زبان برنامه‌نویسی
یک زبان نوع‌گذاری شده‌است اگر مشخصات هر عملیات، نوع داده‌های قابل اجرا توسط آن را با نشان دادن نوع‌هایی که برای آن‌ها قابل اجرا نیست، تعیین کند. برای مثال، «این متن درون گیومه قرار دارد» یک رشته‌است. در بیشتر زبان‌های برنامه‌نویسی، تقسیم یک رشته با یک عدد معنایی ندارد. در نتیجه بیشتر زبان‌های برنامه‌نویسی مدرن ممکن است اجرای این عملیات را توسط برنامه‌ها رد کنند. در برخی زبان‌ها، عبارات بی‌معنی ممکن است هنگام ترجمه (compile) پیدا شود (چک‌کنندهٔ نوع ایستا)، و توسط کامپایلر رد شود، در حالی که در سایر برنامه‌ها، هنگام اجرا پیدا شود. (چک‌کننده نوع دینامیک) که به استثنای در حال اجرا منتج شود(runtime exception). حالت خاص زبان‌های نوع دار زبان‌های تک نوع هستند. بیشتر این زبان‌ها اسکریپتی یا مارک آپ هستند، مانند rexx و SGML و فقط یک داده گونه دارند—غالباً رشته‌های کاراکتری که هم برای داده‌های عددی و هم برای داده‌های سمبلی کاربرد دارند. در مقابل، یک زبان بدون نوع گذاری، مثل اکثر زبان‌های اسمبلی، این امکان را می‌دهد که هر عملیاتی روی هر داده‌ای انجام شود، که معمولاً دنباله‌ای از بیت‌ها با طول‌های متفاوت در نظر گرفته می‌شوند. زبان‌های سطح بالا که بی نوع هستند شامل زبان‌های ساده رایانه‌ای و برخی از انواع زبان‌های نسل چهارم. زبان برنامه‌نویسی
یک سیر رایج در گسترش زبان‌های برنامه‌نویسی این است که قابلیت حل مسائلی با درجات انتزاعی بالاتری را اضافه کنند. زبان‌های برنامه‌نویسی اولیه به سخت‌افزار رایانه گره خورده بودند. همان‌طور که زبان‌های برنامه‌نویسی جدید گسترش پیدا کرده‌اند، ویژگی‌هایی به برنامه‌ها افزوده شده که به برنامه‌نویس اجازه دهد که ایده‌هایی که از ترجمه ساده به دستورهای سخت‌افزار دورتر هستند نیز استفاده کند. چون برنامه‌نویس‌ها کمتر به پیچیدگی رایانه محدود شده‌اند، برنامه‌های آن‌ها می‌تواند محاسبات بیشتری با تلاش کمتر از سوی برنامه‌نویس انجام دهند. این به آن‌ها این امکان را می‌دهد که کارایی بیشتر در واحد زمان داشته باشند. سی‌لک
سی‌لُک نرم فزار آزاد از نوع ابزار بررسی (آنالیز) ایستا کد می‌باشد، که برای شمارش بلاک‌های کد، تعداد خطوط و تعداد توضیحات (comments) نوشته شده در سورس کدها مورد استفاده قرار می‌گیرد. ابزاری بسیار دقیق است و فایل‌های تکراری را نیز نادیده می‌گیرد و سرعت قابل توجهی دارد، با تفکیک زبان‌های برنامه‌نویسی بسیار تا کنون ۱۵۹ زبان برنامه‌نویسی از جمله: سی‌شارپ، سی‌پلاس‌پلاس، جاوا، جاوا اسکریپت، پی‌اچ‌پی، اچ‌تی‌ام‌ال و… زبان اسکریپت‌نویسی
زبان‌های اسکریپت‌نویسی نیاز به کدنویسی کمتری داشته و زمان کمتری از برنامه‌نویسی می‌گیرند اما در برنامه‌نویسی با سایر زبان‌ها، برنامه‌نویس مجبور است تا تمامی دستورها را به صورت دستی وارد نماید. برنامه‌نویسی رایانه‌ای
تعیین اینکه محبوب‌ترین زبانهای برنامه‌نویسی مدرن چیست، بسیار دشوار است. روشهای سنجش محبوبیت زبان برنامه‌نویسی عبارتند از: شمارش تعداد آگهی‌های شغلی که به آن زبان اشاره می‌کنند، تعداد کتاب‌های فروخته شده و دوره‌های آموزش زبان (این اهمیت بیش از حد زبان‌های جدید را بالاتر می‌برد) و تخمین تعداد خطوط موجود کد نوشته شده به زبان (این کمترین تعداد کاربران زبانهای تجاری مانند COBOL را دست کم می‌گیرد). زبان توصیف سخت‌افزار
دو زبان عمده توصیف سخت‌افزار وجود دارد وی‌اچ‌دی‌ال (VHDL) و VERILOG. تفاوت‌هایی بین توصیف جریان داده و رفتار و ساختار آن‌ها وجود دارد. به‌طور مثال جریان داده‌ای از VHDL: library iEEE; use iEEE.STD_LOGIC_1164.ALL; use iEEE.STD_NUMERIC_STD.ALL; entity not1 is end not1; architecture behavioral of not1 is begin end behavioral; HDLها عبارات استاندارد مبتنی بر متن از ساختار سیستم‌های الکترونیکی و رفتار آن‌ها در طول زمان هستند. HDL مانند زبان‌های برنامه‌نویسی همزمان، شامل نحو و معناشناسی و نمادهای صریح برای بیان همزمانی می‌باشد. در مقابل اکثر زبان‌های برنامه‌نویسی نرم‌افزار، HDLها شامل یک مفهوم صریح و روشن از زمان که ویژگی اصلی سخت‌افزار است، می‌باشند. زبان‌هایی که تنها ویژگی آن بیان همزمانی مداری بین سلسه مراتبی از بلوک‌های رده‌بندی مناسب می‌باشد به عنوان زبان‌های لیستنت برای طراحی از طریق کامپیوتر برق CAD)) مورد استفاده قرار می‌گیرد. فهرست زبان‌های برنامه‌نویسی بر پایه نوع
در زیر فهرست زبان‌های برنامه‌نویسی بر پایه نوع آمده‌است: برنامه‌نویسی رایانه‌ای
برخی از زبانها برای انواع خاصی از برنامه‌ها بسیار محبوب هستند، در حالی که برخی از زبان‌ها به‌طور مرتب برای نوشتن انواع مختلف برنامه‌ها مورد استفاده قرار می‌گیرند. به عنوان مثال، COBOL هنوز هم در مراکز داده‌های شرکتی غالباً در رایانه‌های اصلی بزرگ، Fortran در برنامه‌های مهندسی، زبان‌های اسکریپت در توسعه وب و C در نرم‌افزارهای تعبیه شده قوی است. بسیاری از برنامه‌ها از ترکیبی از چندین زبان در ساخت و استفاده خود استفاده می‌کنند. زبانهای جدید عموماً در حدود نحو یک زبان قبلی طراحی شده‌اند که قابلیت‌های جدیدی نیز به آن اضافه شده‌است (به عنوان مثال ++C جهت‌یابی به شی را به C اضافه می‌کند، و جاوا مدیریت حافظه و بایت کد را به ++C اضافه می‌کند، اما در نتیجه بازده و توانایی کم را از دست می‌دهد. دستکاری ساده) معماری رایانه با زبان سطح بالا
بر این اساس به آن طراحی کامپیوتری مبتنی بر زبان نیز گفته می‌شود که عمدتاً در دهه‌های ۱۹۶۰ و ۱۹۷۰ ابداع شد و مورد استفاده قرار می‌گرفت. معماری کامپیوتر با زبان سطح بالا در دهه‌های ۱۹۶۰ و ۱۹۷۰ رایج بود، اما در دهه ۱۹۸۰ استفاده از این نوع معماری تا حد زیادی کاهش یافت. کمرنگ شدن استفاده از این نوع معماری به دلیل شکست چشمگیر اینتل ۴۳2 (1981) و ظهور کامپایلر بهینه‌ساز و رایانه کم دستورها کاهش یافته و معماری کامپیوتر با مجموعه دستورات پیچیده شبیه به آن، و توسعه کامپایلرهایی با قابلیت کامپایل در لحظه برای زبان برنامه‌نویسی سطح بالا‌ها اتفاق افتاد. زبان برنامه‌نویسی
بسیاری از زبان‌های اختصاصی، علی‌رغم ماهیت اختصاصی، به‌طور گسترده مورد استفاده قرار می‌گیرند. مثال‌ها شامل MATLAB, VBScript و Wolfram Language هستند. برخی از زبان‌ها ممکن است انتقال از بسته به باز را تغییر دهند. به عنوان مثال، ارلانگ در ابتدا زبان برنامه‌نویسی داخلی اریکسون بود. بلیس (زبان برنامه‌نویسی)
بلیس یک زبان برنامه‌نویسی سیستم است که در دانشگاه کارنگی ملون توسط W.A.Wulf ،دی بی راسل و ای ان هابرمن در سال ۱۹۷۰ ایجاد شد. شاید بلیس بهترین زبان برنامه‌نویسی سیستم شناخته شده تا شروع به کار کردن زبان سی بود. از آن پس سی رونق گرفت و بلیس کمرنگ شد. هنگامی که سی در نخستین دورهٔ رشدش بود در آزمایشگاه بل در تعدادی پروژه دربارهٔ شایستگی بلیس در مقابل سی بحث شد. بلیس یک زبان بدون نوع و ساختار بلوکی است که بر پایهٔ عبارات است نه دستورات؛ و شامل سازنده‌هایی برای ادارهٔ استثناء، کروتین هاو ماکرو هااست. نام این زبان در زمان‌های گوناگون کوتاه شدهٔ "Basic Language for Implementation of System Software" (زبان پایه برای اجرای نرم‌افزار سیستم) یا "System Software Implementing Language Backwards" است. DEC کامپایلرهایی برای BLISS برای PDP-10, PDP-11 , VAX , DEC PRISM , MIPS , DEC Alpha , Intel IA-32 ایجاد کرد و از آن در خانه در دههٔ ۱۹۸۰ به صورت گسترده استفاده شد. اکثر برنامه‌های سودمند برای سیستم عامل VMS به زبان BLISS-32 نوشته شده بود. برنامه رایانه‌ای
زبان‌های اعلانی، بیشتر از نحوهٔ انجام کار، بر کاری که باید انجام شود تمرکز دارند. این رویکرد باعث می‌شود امکان تغییر دادن نواحی بیرونی به یک تابع یا عبارت داده نشود و در نتیجه از بروز اثرات جانبی جلوگیری شود. این زبان‌ها به سه دستهٔ اصلی تابعی، منطقی و پرسمانی تقسیم می‌شوند. مفسر (رایانش)
پرل، پایتون، روبی، متلب و پی اچ پی جزو زبان‌های برنامه‌نویسی، از نوع ۲ هستند، در حالی که پاسکال و ماشین مجازی جاوا نوع ۳ هستند. برنامه‌های نوشته شده با جاوا از قبل ترجمه شده و به عنوان کدهای مستقل از ماشین، ذخیره می‌شوند و بعد در زمان اجرا توسط یک مفسر (ماشین مجازی) اجرا می‌شوند. برخی سیستم‌ها، مانند اسمال تاک و غیره ممکن است ترکیبی از نوع ۲ و ۳ باشند. لفظ‌های زبان مفسر و زبان مترجم صرفاً به این معنا هستند که اساس پیاده‌سازی یک زبان برنامه‌نویسی یک مفسر است یا یک مترجم؛ یک زبان سطح بالا زبانی است که مستقل از پیاده‌سازی مشخصی است. زبان اسکریپت‌نویسی
زبان‌های برنامه کاربردی خاص می‌توانند به رده‌های بسیار متفاوتی شکسته شوند (اجراشونده‌ها)، زبان برنامه کاربردی مبتنی مجزا، زبان‌های درونی برنامه کاربردی خاص (مثل postscript) و از بین آنها زبان‌های اسکریپت‌نویسی اصطلاحی وجود دارد که برای نیازهای کاربر برنامه کاربردی متناسب‌سازی شده‌اند. آی‌پایتون
نوت‌بوک آی پایتون به یک هسته آی پایتون متصل می‌شود. همانند نسخه ۲٫۳ (اکتبر ۲۰۱۴)، در حال حاضر ۴۹ هسته سازگار- آی پایتون همانند بسیاری از زبان‌های برنامه‌نویسی، از جمله پایتون (زبان برنامه‌نویسی)، آر (زبان برنامه‌نویسی)، جولیا و هسکل (زبان برنامه‌نویسی) وجود دارند. برنامه‌نویسی داده‌محور
در برنامه نویسی کامپیوتر ، برنامه‌نویسی داده محور یک پارادیم برنامه نویسی است که در آن دستورهای برنامه ، داده‌ها را برای همسان‌سازی و پردازش‌های مورد نیاز به جای تعریف یک توالی مراحل توصیف می‌کنند . نمونه‌هایی استاندارد از زبان‌های برنامه‌نویسی داده محور زبان متن-پردازش sed و AWK هستند، که در آن‌ها داده ، دنباله‌ای از خطوط در یک جریان ورودی می‌باشد (این نوع زبان‌های برنامه‌نویسی هم‌اکنون با نام زبان‌های برنامه‌نویسی خط-گرا نیز شناخته می‌شوند) و در درجه اول عبارات منظم یا شماره خط الگوی تطابق هستند . زبان برنامه‌نویسی سطح پایین
اولین نسل زبان برنامه‌نویسی کد ماشین است. این زبان تنها زبانی است که به صورت مستقیم توسط ریزپردازنده درک می‌گردد. در حال حاضر برنامه‌نویسان از زبان ماشین استفاده نمی‌کنند چرا که همانند زبان اسمبلی نیاز به توجه به جزئیات زیادی داشته که زبان سطح بالا خود آن‌ها را برطرف می‌نماید؛ و برای هر دستور نیاز به یافتن کد عددی متناسب با آن دستور است. به این دلیل زبان‌های نسل دوم که یک سطح انتزاع بالاتر از کد ماشین قرار دارد به وجود آمدند. طراحی الگوریتم
هم اکنون در ایران طراحی الگوریتم‌ها به عنوان درسی در رشته مهندسی کامپیوتر (نرم‌افزار و سخت‌افزار) و فناوری اطلاعات تدریس می‌شود. در طراحی الگوریتم‌ها مباحثی همچون پیچیدگی زمانی، بازگشتی، روش تقسیم و غلبه، روش حریصانه، روش برنامه‌سازی پویا، تکنیک عقب‌گرد، نظریه P و NP تدریس می‌شود. زبان‌های برنامه‌نویسی رایانه‌های بزرگ مانند زبان ALGOL (برای زبان الگوریتمی)، زبان FORTRAN، زبان COBOL، زبان PL/I، زبان SAIL و SNOBOL ابزار محاسبات برای به اجرا درآوردن یک طراحی الگوریتم است؛ اما یک طراحی الگوریتم (a/d) یک زبان نیست، یک a/d می‌تواند یک روش دست نوشته باشد، به‌طور مثال مجموعه‌ای از معادلات. یک سری از فرایندهای مکانیک انجام‌شده توسط دست، قطعه آنالوگ از تجهیزات یا فرایند دیجیتال و پردازنده است. یکی از مهم‌ترین جنبه‌های طراحی الگوریتم، ایجاد یک الگوریتم است که دارای یک زمان اجرای کارآمد باشد، که به عنوان او بزرگ (big O) شناخته شده‌است. کد رایانه
رایانه‌ها فقط می‌توانند دستورالعمل‌های مربوط به کد ماشین را که بخشی از مجموعه دستورالعمل‌های آن‌ها است، اجرا کنند. از آنجا که خواندن این دستورالعمل‌ها برای انسان دشوار است، و نوشتن برنامه‌های خوب به‌زبان ماشین یا سایر زبان‌های برنامه‌نویسی سطح پایین یک کار زمان‌بر است، بیشتر برنامه‌نویسان به کد منبع یک زبان برنامه‌نویسی سطح بالا برنامه‌نویسی می‌کنند. این کد منبع توسط کامپایلر یا مترجم به‌زبان ماشین ترجمه می‌شود تا کامپیوتر بتواند آن را در جهت انجام وظایفش اجرا کند. کامپایلر آبجکت کد را تولید می‌کند که معمولاً به زبان ماشین نوشته شده‌است اما این کد ممکن است به یک زبان سطح متوسط، در سطح پایین‌تری از منبع نیز باشد. اغلب از یک سیستم زمان اجرا برای اجرای آبجکت کد با پیوند دادن آن به کتابخانه‌های متداول استفاده می‌شود. Bytecode سطحی پایین‌تر از سطح زبان منبع است که برای تفسیر کارآمدتر مفسران طراحی شده‌است. اوپن‌بی‌اس‌دی
میزکارهای گرافیکی همچون گنوم و KDE، زبان‌های برنامه‌نویسی مانند پایتون و PHP، مرورگرهای وب همچون کرومیوم و فایرفاکس، مجموعه اداری لیبره‌آفیس، کامپایلر LLVM، ویرایشگرهای متن همانند ایمکس و ویم، سرورهای شبکه مانند مای‌اس‌کیوال، پست‌فیکس و پست‌گرس‌کیوال و همچنین بسیاری برنامه دیگر بخشی از برنامه‌هایی هستند که در پورت‌های اوپن‌بی‌اس‌دی یافت می‌شوند. پورت‌های اوپن‌بی‌اس‌دی روی‌هم‌رفته نزدیک به ۷٬۸۰۰ نرم‌افزار را دربرمی‌گیرد. زبان برنامه‌نویسی سطح پایین
زبان نسل دوم زبان اسمبلی است. این زبان با وجود این که در سطح انتزاع بالاتری قرار دارد اما ساختار ریزپردازنده مانند ثبات‌ها و دستورالعمل‌ها را مورد توجه قرار می‌دهد. این دستورالعمل‌های ساده سپس تبدیل به کد ماشین می‌گردد. کد اسمبلی را می‌توان به سطح بالاتری از انتزاع گسترش داد. به عنوان مثال زبان اسمبلی را می‌توان به صورت قابل خواندن‌تری مانند کد زیر نوشت.ترجمه‌ای از صفحه معادل ویکی‌پدیای انگلیسی اکس‌ال (زبان برنامه‌نویسی)
زبان XL در 3 سطح تعریف می‌شود: XL از معدود زبان‌هایی است که تایپ ابتدایی و لغات کلیدی ندارد. همه تایپ‌های داده‌ای نظیر integer و عملگرهایش نظیر add در سطح 2، در کتابخانه‌های استاندارد تعریف می‌شود. XL1 هم دارای ویژگی قابل جابجایی بودن بر روی محیط‌های اجرایی گوناگون است.  برنامه ساده !Hello World در زبان XL به صورت زیر نوشته می‌شود: use XL.TEXT_IO WriteLn "Hello World" زبان برنامه‌نویسی
زبان‌های برنامه‌نویسی را می‌توان از چهار دیدگاه متفاوت مورد بررسی قرار داده و تقسیم‌بندی کرد:نکته: امروزه با وجود ماشین‌های مجازی، تقسیم‌بندی زبان‌های برنامه‌نویسی بر اساس نوع ترجمه، اشتباه می‌باشد. ماشین مجازی HipHop (مورد استفاده شرکت فیسبوک برای کاهش مرحله تفسیر در PHP) و همچنین کامپایل زبان برنامه‌نویسی پایتون به کلاس‌های جاوا نمونه‌هایی از چندگانگی نوع ترجمه در زبان‌های برنامه‌نویسی می‌باشد. زبان برنامه‌نویسی
صدها زبان برنامه‌نویسی خلق شده‌ است، که بیشتر آن‌ها در زمینهٔ رایانه هستند. زمینه‌ای که هر ساله بسیاری زبان دیگر در آن ایجاد می‌شود. جعبه ابزار مهندسی مجدد نرم‌افزار DMS
DMS دارای انواع مختلفی از زبان‌های مقدماتی از پیش تعریف شده‌است که اکثر لهجه‌های واقعی C و ++C شامل C ++ 0x، C #، جاوا، پایتون، PHP , EGL، Fortran، COBOL، Visual Basic , Verilog، VHDL و حدود ۲۰ یا بیشتر را در بر می‌گیرد. زبان‌ها. زبانهای از پیش تعریف شده به شخصی سازان این امکان را می‌دهند که بلافاصله بر روی وظیفه مهندسی مجدد خود تمرکز کنند تا جزئیات جزئیات زبانهایی که باید پردازش شوند. برنامه‌نویسی رایانه‌ای
مقاله اصلی: زبان برنامه‌نویسی زبان‌های مختلف برنامه‌نویسی وجود دارند که هر کدام از آن‌ها سبک‌های خاصی را پشتیبانی می‌کنند (به نام پارادایم‌های برنامه‌نویسی). انتخاب زبان مورد استفاده، مورد توجه بسیاری از مباحث از قبیل خط مشی شرکت، مناسب بودن در انجام کار، در دسترس بودن بسته‌های شخص ثالث یا ترجیح شخصی است. در حالت ایده‌آل، زبان برنامه‌نویسی که برای کار مورد نظر مناسب‌تر باشد، انتخاب می‌شود. تجارت از این ایده‌آل شامل یافتن برنامه نویسان به اندازه کافی است که زبان را برای ایجاد یک تیم می‌شناسند، در دسترس بودن کامپایلرها برای آن زبان و کارایی که برنامه‌های آنها را با یک زبان خاص اجرا می‌کنند. زبان‌ها طیف تقریبی را از «سطح پایین» تا «سطح بالا» تشکیل می‌دهند. زبان‌های «سطح پایین» به‌طور معمول بیشتر دستگاه محور و سریع‌تر اجرا می‌شوند، و به زبان ماشین نزدیک‌تر هستند در حالی که زبان‌های «سطح بالا» انتزاعی‌تر و آسان‌تر برای استفاده هستند اما سرعت کمتری دارند. معمولاً کدگذاری به زبان‌های «سطح بالا» از زبان‌های «سطح پایین» ساده‌تر است. زبان برنامه‌نویسی
R برنامه‌نویسی رایانه‌ای
جزئیات در زبان‌های برنامه‌نویسی مختلف متفاوت به نظر می‌رسند ولی تعدادی از ساختارهای اساسی در همه زبان‌های برنامه‌نویسی یکسان هستند: C++
C++ (بخوانید سی‌پلاس‌پلاس ) یک زبان برنامه‌نویسی همه‌منظوره، همگردان، سطح میانی، شیءگرا و چندرگه است که از برنامه‌نویسی رویه‌ای، تجرید داده‌ها و برنامه‌نویسی شیءگرا پشتیبانی می‌کند. این زبان دارای قابلیت‌های انواع داده ایستا، نوشتار آزاد، چندمدلی، معمولاً زبان ترجمه‌شده با پشتیبانی از برنامه‌نویسی ساخت‌یافته، برنامه‌نویسی شیءگرا، برنامه‌نویسی جنریک است. از آنجا که در ++C اشیاء را می‌توان ابتدا به ساکن از کلاس‌هایی ایجاد کرد که به هیچگونه سلسله مراتب رده‌ها و وراثت مقید نیستند، لذا ++C از برنامه‌سازی شیء بنیاد (object-based programming) نیز پشتیبانی می‌کند. C++ به همراه جد خود C از پرطرفدارترین زبان‌های برنامه‌نویسی هستند. C++ یک زبان سطح میانی در نظر گرفته می‌شود؛ این زبان دارای قابلیت‌های زبان‌های برنامه‌نویسی سطح بالا و زبان‌های برنامه‌نویسی سطح پایین به‌صورت هم‌زمان است. زبان برنامه‌نویسی
برنامه‌های رایانه ممکن است در یک فرایند دسته ای بدون تعامل انسان اجرا شود، یا ممکن است یک کاربر دستورالعمل‌ها را در یک جلسه تعاملی یک مترجم تایپ کند. در این حالت «دستورها» صرفاً برنامه‌هایی هستند که اجرای آنها با هم زنجیر شده‌است. هنگامی‌که یک زبان می‌تواند دستورها خود را از طریق یک مترجم اجرا کند (مانند پوسته یونیکس یا دیگر رابط خط فرمان)، بدون تدوین، به آن اسکریپت می‌گویند. نوع‌دهی قوی و ضعیف
در برنامه‌نویسی رایانه‌ای، زبان‌های برنامه‌نویسی معمولاً به صورت محاوره‌ای به دو نوع، بر اساس آنکه «سیستم نوع زبان» نوع‌دهی قوی یا نوع‌دهی نیرومند ،و نوع‌دهی ضعیف یا نوع‌دهی کم‌زور (نوع دهی سست ) باشد، طبقه‌بندی می‌شود. برنامه‌نویسی پیشرفته در محیط یونیکس
برنامه‌نویسی پیشرفته در محیط یونیکس کتابی است دربارهٔ برنامه‌نویسی رایانه که توسط ریچارد استیونز نوشته شده‌است. این کتاب به تشریح رابط‌های برنامه‌نویسی نرم‌افزار موجود در سیستم‌عامل‌های خانواده یونیکس می‌پردازد و نحوه نوشتن برنامه‌های کاربردی در یونیکس را با استفاده از زبان برنامه‌نویسی سی نشان می‌دهد. اولین ویرایش کتاب در سال ۱۹۹۲ توسط انتشارات ادیسون-وزلی به چاپ رسید. این کتاب برنامه‌نویسی برای دو خانواده اصلی و محبوب سیستم‌عامل یونیکس، خانواده بی‌اس‌دی (بویژه ۴٫۳بی‌اس‌دی و ۳۸۶بی‌اس‌دی) و همینطور خانواده یونیکس سیستم ۵ (SVR4) را تشریح می‌کند. کتاب به تشریح فراخوان‌های سیستمی که بر روی یک توصیف‌گر پرونده عمل می‌کنند، فراخوان‌های سیستمی خاصی که بر روی خود توصیف‌گرهای پرونده عمل می‌کنند مانند ioctl و عملیات‌های مختلف بر روی فایل‌ها و دایرکتوری‌ها می‌پردازد. کتاب همچنین بخش ورودی/خروجی استاندارد در کتابخانه استاندارد سی و دیگر قسمت‌های مورد نیاز را هم پوشش می‌دهد. چند فصل از کتاب هم به بررسی فراخوان‌های سیستمی برای کنترل فرایندها، گروه‌های فرایند، دیمن‌ها، ارتباطات بین فرایندی و سیگنال‌ها اختصاص داده شده‌است. یک فصل از کتاب هم به نحوه کنترل کردن ترمینال‌ها اختصاص داده شده و فصلی دیگر هم مفاهیم انواع مختلف ترمینال‌های مجازی و کتاب‌خانه‌هایی نظیر ترم‌کپ و ان‌کرسز را تشریح می‌کند. استیونز سه فصل دیگر هم برای ارائه کردن تعدادی مثال واقعی در کتاب گنجانده است. در یک فصل یک رابط پایگاه داده پیاده‌سازی می‌کند، در فصلی دیگر با یک چاپگر PostScript ارتباط برقرار می‌کند و در فصل دیگری هم نحوهٔ ارتباط با مودم را نشان می‌دهد. ویرایش اول این کتاب برنامه‌نویسی شبکه را پوشش نمی‌دهد، چرا که این مبحث در کتاب دیگر استیونز، "برنامه‌نویسی شبکه در یونیکس" و کتاب سه جلدی "TCP/IP مصور" مورد پوشش قرار گرفته‌است. زبان برنامه‌نویسی نسل پنجم
زبان برنامه‌نویسی نسل پنجم (5GL) هر زبان برنامه‌نویسی مبتنی بر حل مسئله با استفاده از محدودیت‌های داده شده به برنامه، به جای استفاده از یک الگوریتم نوشته شده توسط یک برنامه‌نویس است. اکثر زبان‌های برنامه‌نویسی مبتنی بر محدودیت و منطق و برخی دیگر از زبان‌های اعلانی، از زبان‌های نسل پنجم هستند. برنامه‌نویس
برنامه‌نویس‌ها مطابق مشخصات فنی که در درجهٔ اول توسط برنامه‌نویس‌های ارشد و تحلیل‌گرهای سیستم بیشتر تعیین شده‌اند برنامه می‌نویسند. پس از تکمیل فرایند طراحی، کار برنامه‌نویس است که آن طراحی را به دنباله‌های منطقی از دستورالعمل‌هایی که رایانه بتواند پیروی کند تبدیل کند. برنامه‌نویس کد این دستورالعمل‌ها را به یکی از بسیار زبان برنامه‌نویسی می‌نویسد. زبان‌های برنامه‌نویسی گوناگون بسته به هدف برنامه استفاده می‌شوند. کوبول، برای نمونه، به‌طور معمول برای اپلیکیشن‌های تجاری که معمولاً روی بزرگ‌رایانه و رایانه کوچک اجرا می‌شوند استفاده می‌شود؛ در حالی که، فورترن در علم و مهندسی استفاده می‌شود. سی++ به‌طور گسترده برای هر دو اپلیکیشن‌های علمی و تجاری کاربرد دارد. جاوا، سی شارپ، ویژوال بیسیک و پی‌اچ‌پی زبان‌های برنامه‌نویسی محبوبی برای وب و نرم‌افزارهای کاربردی تجاری هستند. برنامه‌نویس‌ها عموماً بیش از یک زبان برنامه‌نویسی می‌دانند، و چون بیشتر زبان‌ها مشابه یکدیگر هستند، اغلب نسبتاً به آسانی زبان‌های تازه را فرا می‌گیرند. در عمل، برنامه‌نویس‌ها اغلب با زبانی که می‌دانند نسبت داده‌ می‌شوند، برای نمونه "برنامه‌نویس‌های جاوا"، یا با نوع وظیفه‌ای که انجام می‌دهند یا محیطی که در آن کار می‌کنند، برای نمونه، "برنامه‌نویس‌های پایگاه داده‌ها"، "برنامه‌نویس‌های بزرگ‌رایانه" یا " توسعه‌دهنده‌های وب. کولا (زبان برنامه‌نویسی)
کولا زبان برنامه نویسی شبیه به جاوا و سی شارپ با برخی از ویژگی‌های سطح بالاتر از پرل و روبی از جمله عبارات منظم طبقه اول است. می‌تواند توسطMicrosoft .NET CLR یا Parrot virtual machine کامپایل شود کولا یک زبان کامپایل شده با بررسی نوع ایستاست، اما طراح برخی از ویژگی‌های عام تر زبان‌های اسکریپت نویسی مانند پرل و روبی را با آن آمیخته است. بر طبق آنچه نویسنده بیان کرده‌است، بعد از سال‌ها استفاده از جاوا و سی پلاس پلاس برای پروژه‌های بزرگ و پرل برای پروژه‌های کوچک تا متوسط به نظر می‌رسید هیچ زبانی فاصله بین این دو را پر نخواهد کرد. کولا بیشتر ترکیبی از چند زبان قدرتمند با در نظر گرفتن اصول کلیدی زیر است تا طراحی یک زبان جدید: با داشتن براکت‌ها و سمی کالن در کولا، برنامه نویسان سی پلاس پلاس، جاوا و پرل باید راحت باشند و فضای سفید هیچ تأثیری روی نحو ندارد. کنوانسیون بر کد - مطالبی که قرار دادیند نیاز به اعلان صریح ندارند. سی شارپ
زبان سی شارپ، یک زبان برنامه‌نویسی چند الگویی و منظم شده مدل‌های تابعی، امری، عمومی، شیءگرا و جز گرا و در بستر دات نت می‌باشد. این زبان توسط مایکروسافت و جزئی از دات نت به وجود آمد و بعداً استانداردهای ECMA و ISO را نیز دربر گرفت. سی شارپ یکی از ۴۴ زبان برنامه‌نویسی است که توسط زمان اجرای زبان مشترک از چارچوب دات‌نت پشتیبانی می‌شوند و در همه جا به وسیله مایکروسافت ویژوال استودیو شناخته می‌شود. آبجکتیو-سی
[[رده:آبجکتیو-سی]] [[رده:زبان‌های برنامه‌نویسی خانواده سی]] [[رده:زبان‌های برنامه‌نویسی ساخته‌شده در ۱۹۸۶ (میلادی)]] [[رده:زبان‌های برنامه‌نویسی شیءگرا]] [[رده:زبان‌های برنامه‌نویسی کلاس محور]] [[رده:زبان‌های برنامه‌نویسی ماشینی پویا]] [[رده:گنو استپ]] [[رده:نکست]] زبان اسکریپت‌نویسی
یک زبان اسکریپت‌نویسی یک زبان برنامه‌نویسی است که اجرای وظایف را خودکارسازی می‌کند. اسکریپت‌ها برای محیط‌های زمان اجرای خاص طراحی شده‌اند. اگر از زبان اسکریپت‌نویسی استفاده نشود، وظایف باید تک به تک توسط عامل انسانی اجرا گردد. زبان‌های اسکریپت‌نویسی اکثراً تفسیر می‌شوند (به جای آنکه کامپایل شوند). هر برنامه‌ی اسکریپتی دنباله‌ای از دستورها است که پی‌در‌پی انجام می‌شوند، از این رو به آن «دستورنامه» یا «دست‌نامه» هم می‌گوییم. انی‌لاجیک
در نرم‌افزار شبیه‌سازی AnyLogic، زبان برنامه‌نویسی بر پایه آیتم‌های زیر است: ۱. استوک (Stock) و دیاگرام‌های جریان (Flow Diagrams): که برای مدلسازی سامانه‌های پویا مورد استفاده قرار می‌گیرند. ۲.StateCharts: که معمولاً در مدلسازی عامل بنیان مورد استفاده قرار می‌گیرند؛ ولی در شبیه‌سازی گسسته پیشامد نیز مثلاً برای تعریف خرابی در ماشین‌ها مورد استفاده قرار می‌گیرد. ۳.Action Charts: برای تعریف الگوریتم‌هایی که در شبیه‌سازی گسسته پیشامد (مانند الگوریتم موجود در مراکز تماس) یا عامل بنیان (مثلاً برای تعریف منطق تصمیم‌گیری عامل‌ها) مورد نیاز است، کاربرد دارد. ۴.Process Flowcharts: به عنوان ساختار اولیه‌ای برای تعریف فرایند در شبیه‌سازی گسسته پیشامد مورد استفاده قرار می‌گیرد. با نگاه کردن به این نمودار جریان می‌توان به این مطلب پی برد که چرا در بعضی از مواقع به شبیه‌سازی گسسته پیشامد، شبیه‌سازی فرایند محور (Process Centric) نیز گفته می‌شود. همچنین زبان برنامه‌نویسی شامل موارد زیر نیز می‌شود: برنامه‌نویسی رایانه‌ای
یک برنامهٔ ساده در زبان برنامه‌نویسی Basic که از ساده‌ترین زبان‌های برنامه‌نویسی است می‌تواند به شکل زیر باشد: سی (زبان برنامه‌نویسی)
استفادهٔ گسترده این زبان در انواع رایانه‌ها و سخت‌افزارهای مختلف باعث شد که نسخه‌های مختلفی از این زبان به‌وجود آید که با یکدیگر ناسازگار بودند. در سال ۱۹۸۳ مؤسسه استانداردهای ملی آمریکا (ANSI) کمیته‌ای موسوم به X3J11 را را مأمور کرد تا یک تعریف فاقد ابهام و مستقل از ماشین را از این زبان تدوین نماید. در سال ۱۹۸۹ این استاندارد تحت عنوان ANSI C به تصویب رسید و سپس در سال ۱۹۹۰، سازمان بین‌المللی استانداردسازی (ISO) نیز این استاندارد را پذیرفت و مستندات مشترک آنها تحت عنوان ANSI/ISO C منتشر گردید. معماری رایانه با زبان سطح بالا
سیستم‌های بسیار متنوعی تحت این عنوان وجود دارند. بیشترین مثال یک زبان مستقیم اجرا شده‌است که در آن معماری مجموعه دستورها کامپیوتر با دستورالعمل‌های زبان برنامه‌نویسی سطح بالا برابر است و کد منبع مستقیماً با کمترین میزان پردازش قابل اجرا است. علم اطلاعات و کامپیوتر
زبانهای برنامه‌نویسی معروف مورد استفاده در مطالعه دانشگاهی CIS شامل موارد زیر هستند: Java , Python , C #، C ++ , Perl , Ruby , Pascal , Swift , Visual Basic. شبه‌کد
کتاب‌های درسی و منتشرات علمی مربوط به کامپیوتر و محاسبات عددی غالباً از شبه کد برای بیان الگوریتم‌ها استفاده می‌کنند، تا برنامه نویسان آن‌ها را بفهمند، حتی اگر آن‌ها تمام آن زبان برنامه نویسی را بلد نباشند. در کتاب‌های درسی، معمولاً بخشی برای معرفی قراردادها و توضیح ویژگی کدها و سبک کدنویسی وجود دارد تا خواننده بتواند منظور نویسنده را به سادگی متوجه شود و در طول مطالعه کتاب مشکلی با کدهای نوشته شده در کتاب نداشته باشد. میزان جزئیات این زبان‌ها ممکن است در برخی موارد به زبان‌های همه منظوره رسمی نزدیک باشد –برای مثال، کتاب مرجع کنوت " هنر برنامه‌نویسی کامپیوتر" الگوریتم‌ها را در زبان اسمبلی کاملاً صریح که برای ریزپردازنده ناموجود است نوشته شده‌است. برنامه‌نویسی که می‌خواهد الگوریتم مشخصی را پیاده کند، مخصوصاً الگوریتمی که با آن آشنایی ندارد، غالباً با توضیح شبه کد آن شروع خواهد کرد، و سپس آن شرح را به سادگی به زبان برنامه‌نویسی هدف ترجمه خواهد کرد و سپس آن را تغییر خواهد داد تا به درستی با سایر قسمت‌های برنامه هماهنگی داشته باشد. برنامه نویسان ممکن است همچنین یک پروژه را با بیان کلیات آن به صورت شبه کد و بر روی کاغذ شروع کنند و سپس آن را به زبان واقعی بنویسند، به عنوان یک روش حل ساختاری بالا به پایین. همانگونه که از اسم آن مشخص است، شبه کد معمولاً از گرامر هیچ زبان مشخصی پیروی نمی‌کند، و هیچ فرم سیستماتیک استاندارد یا ساخت یافته‌ای وجود ندارد، هرچند هر نویسنده‌ای ممکن است به‌طور کلی سبک و گرامر زبان خاصی را استفاده کند برای مثال ممکن است برای بیان کدهای درون یک بلوک مانند زبان‌های برنامه نویسی C و جاوا از گیومه استفاده کند یا اینکه صرفاً مانند زبان برنامه‌نویسی پایتون از فاصله‌ها استفاده کند. انتخاب روش نوشتن شبه کد قراردادی است که نویسنده دارد و می‌تواند مستقل از یک زبان برنامه‌نویسی خاص باشد. اما نویسندگان معمولاً از گرامر و سبک زبان‌های محبوب و معروفی مثل پاسکال، بیسیک، C،C++، جاوا، لیسپ و ALGOL استفاده می‌کنند. تعریف متغیرها در یک شبه کد ذکر نمی‌شود. صدا کردن توابع و بلوک‌ها برای مثال کدهای درون حلقه غالباً با کد یک خطی طبیعی جایگزین می‌شوند. در نتیجه وابسته به نویسنده، شبه کد ممکن است در سبک و سیاق گستردگی زیادی داشته باشد، از پیاده‌سازی تقریباً دقیق یک زبان مشخص در یک سو تا توصیف توضیحی کد به زبان انسانی در سوی دیگر. codice_1 برای دیدن مثال‌های بیشتر می‌توانی به مقالات با مثال‌های شبه کد مراجعه کنید. در محاسبات عددی، شبه کد غالباً شامل نماد گذاری ریاضی است، نوعاً از مجموعه و تئوری ماتریس، ترکیب شده با یک زبان قراردادی، و شاید توضیحات زبان طبیعی. این یک نماد گذاری فشرده و غالباً غیررسمی است که تعداد زیادی از ریاضی آموختگان می‌توانند آن را متوجه شوند، و یک روش بسیار متداول است برای بیان آلگوریتم‌های ریاضی. معمولاً حروف چینی غیر اسکی برای معادلات ریاضی مورد استفاده قرار می‌گیرد، برای مثال به وسیله Tex یا MathML یا ویرایشگران فرمول اختصاصی. شبه کدهای ریاضی گاهی اوقات کد دست وپا شکسته(pidgin) نامیده می‌شوند، برای مثال pidgin ALGOL، pidgin fortran، pidgin basic، pidgin pascal، pidgin C، pidgin Ada. غالباً پیشنهاد می‌شود که زبان‌های برنامه‌نویسی آینده بیشتر از زبان‌های متداول امروز به زبان طبیعی و زبان انسان نزدیک باشند؛ نکته اینجاست که با رو به افزایش بودن سرعت کامپیوترها و پیشرفت‌های حاصل در زمینه کامپایل کردن به کامپیوترها این اجازه را خواهد داد که از توضیح الگوریتم‌ها برنامه را ایجاد کنند، به جای اینکه نیاز داشته باشند تا انسان تمام جزئیات را پیاده کند. دستور زبان طبیعی در زبان‌های برنامه نویسی تلاش‌های گسترده برای وارد کردن دستور زبان طبیعی به زبان‌های برنامه‌نویسی منجر به ایجاد زبان‌های برنامه‌نویسی از قبیل HyperTalk، Lingo، AppleScript، SQL و Inform شده‌است. در این زبان ها، پرانتزها و کاراکترهای خاص با حروف اضافه جایگزین شده‌اند تا کد به زبان طبیعی نزدیک تر باشد. این کار باعث می‌شود که انسانی که با زبان آشنایی ندارد متوجه کد شود و حتی یک زبان را نیز بیاموزد. در هر حال، شباهت به زبان طبیعی بیشتر جنبه زیبایی دارد تا اصالت. قواعد گرامری دقیقاً مانند زبان‌های برنامه‌نویسی قراردادی محض و رسمی هستند، و لزوماً نوشتن برنامه‌ها را آسان تر نمی‌کنند. یک جایگزین برای استفاده شبه کد ریاضی (شامل نظریه مجموعه‌ها و عملیات ماتریسی) برای مستند سازی الگوریتم‌ها استفاده از یک زبان برنامه‌نویسی ریاضی وار است که از ترکیبی از نمادگذاری ریاضی غیر اسکی و ساختارهای کنترل برنامه باشد. سپس کد می‌تواند توسط ماشین تجزیه و تفسیر شود. چند زبان‌های خصوصیات رسمی نماد گذاری نظریه مجموعه‌ها را با کمک کاراکترهای ویژه شامل می‌شوند. برای مثال: نماد گذاری Z