زبانهاي برنامهنويسي ساختارهاي زباني دستورمداري در رايانهها هستند که بهوسيله? آنها ميتوان يک الگوريتم را بهوسيله? ساختارهاي دستوري متفاوت براي اجراي رايانه توصيف کرد و با اين روش امکان نوشتن برنامه جهت توليد نرمافزارهاي جديد بوجود ميآيد. معمولاً هر زبان برنامهنويسي داراي يک محيط نرمافزاري براي وارد کردن متن برنامه، اجرا، همگرداني و رفع اشکال آن هستند. عموماً زبانهاي برنامه نويسي را به پنج نسل تقسيم ميکنند:
يک زبان برنامه نويسي يک زيان مصنوعي است که براي بيان محاسباتي که توسط يک ماشين (مخصوصا رايانه) قابل انجام است، طراحي شدهاست.زبانهاي برنامه نويسي براي ايجاد برنامههايي به کار ميروند که رفتار يک ماشين را مشخص ميکنند، الگوريتم دقيق را بيان ميکنند، و يا روشي براي ارتباط انسانند. بسياري از زبانهاي برنامه نويسي تعدادي قالب از ويژگيهاي نوشته شده دستوري(syntax) و معنا شناسي (semantics) دارند، چرا که رايانهها دستورات دقيقا مشخص نياز دارند. برخي توسط سند خصوصيات (specification document) تعيين شدهاند. (براي مثال يک استاندارد ISO)، در حالي که برخي ديگر داراي پياده سازي غالبي ميباشند.(مانند Perl) اولين زبان برنامه نويسي به قبل از اختراع رايانه باز ميگردد، و براي هدايت رفتار ماشينهايي مانند دستگاههاي نساجي اتوماتيک و نوازندههاي پيانو به کار ميرفت. هزاران زبان برنامه نويسي خلق شدهاند، بيشتر در زمينه ي رايانه، زمينهاي که هر ساله بسياري ديگر ايجاد ميشوند.