لغة البرمجة عبارة عن مجموعة من الأوامر , تكتب وفق مجموعة من القواعد تحدد بواسطة لغة البرمجة ، ومن ثم تمر هذه الأوامر بعدة مراحل إلى ان تنفذ على جهاز الحاسوب .
تقسم لغات البرمجة بناء على قربها من اللغات الإنسانية إلى لغة عالية المستوى (قريبة من اللغة التي يفهمها البشر) مثل سي Java جافا , C و لغة منخفضة المستوى Assembleur وهي قريبة من لغة الآلة.
و كل لغة لها خصائصها التي تميزها عن الأخرى و تجعلها مناسبة بدرجات متفاوتة لكل نوع من أنواع البرامج و المهمة المطلوبة من هذا البرنامج.
كما أن للغات البرمجة أيضاً خصائص مشتركة و حدود مشتركة بحكم أن كل هذه اللغات صممت للتعامل مع الحاسوب.
يقوم المبرمج باجراء عمليات على وحدات المعلومات مثل تخزينها و قراءتها و مقارنتها ، كما يمكن إجراء عمليات حسابية عليها أيضا, وتتبع العمليات القواعد المحددة للغة. و للغة البرمجة دور آخر و هو التحكم في تنظيم إجراء العمليات , حيث توجه تنفيذ خطواتها بنفس تتابع كتابتها من طرف المبرمج ،
و تمكن اللغة أيضاً من إجراء عملية اختيار و تفرع ، وذلك بإدخال شرط منطقي يقوم الحاسوب على أساسه باختيار اتجاه الاستمرار في أداء العمل : فلنفترض أن البرنامج الذي يريد المبرمج صنعه يقوم بقسمة عددين يختارهما المستخدم , و إظهار النتيجة على الشاشة, و من المعروف أن القسمة على صفر لا تجوز ، وبناء علي ذلك فلا بد أن يحدد المبرمج في برنامجه هذا الاختيار : فاذا كان القاسم مخالفا لصفر فإن البرنامج يسيـّر الحاسوب فيقوم بإجراء العملية و يعطي النتيجة . أما اذا كان القاسم صفراً فان البرنامج لا يقوم باجراء العملية و إنما ينبه إلى أن المستخدم حاول القسمة على صفر. و يمكن تنظيم الأوامر بصفة أخرى , حيث يقع تنفيذ أمر أو مجموعة من الأوامر بصفة متكررة دورية (Loop)، و يمكن تقسيم الأوامر أيضاً إلى وحدات فرعية تقوم كل وحدة بانجاز عمل محدد, و الهدف هو تقسيم العمل إلى أجزاء يسهل العمل عليها كل على حدة في هيئة دورات (Loops).