برنامه نویسی کامپیوتری فرآیند انجام یک محاسبات خاص (یا به طور کلی تر، دستیابی به یک نتیجه محاسباتی خاص)، معمولاً با طراحی و ساخت یک برنامه کامپیوتری اجرایی است. برنامه نویسی شامل وظایفی مانند تجزیه و تحلیل، تولید الگوریتم ها، پروفایل سازی دقت الگوریتم ها و مصرف منابع، و اجرای الگوریتم ها (معمولاً در یک زبان برنامه نویسی انتخاب شده، معمولاً به عنوان کدنویسی شناخته می شود) است.

کد منبع یک برنامه به جای کد ماشین که مستقیماً توسط واحد پردازش مرکزی اجرا می شود، به یک یا چند زبان نوشته شده است که برای برنامه نویسان قابل درک است. هدف از برنامه نویسی یافتن دنباله ای از دستورالعمل هاست که عملکرد یک کار (که می تواند به پیچیدگی یک سیستم عامل باشد) روی یک کامپیوتر، اغلب برای حل یک مشکل خاص، خودکار شود.

بنابراین برنامه نویسی ماهر معمولاً به تخصص در چندین موضوع مختلف از جمله دانش حوزه برنامه، الگوریتم های تخصصی و منطق رسمی نیاز دارد.

وظایف همراه و مرتبط با برنامه نویسی شامل تست، اشکال زدایی، نگهداری کد منبع، پیاده سازی سیستم های ساخت و مدیریت مصنوعات مشتق شده، مانند کد ماشین برنامه های کامپیوتری است.

اینها ممکن است بخشی از فرآیند برنامه نویسی در نظر گرفته شوند، اما اغلب اصطلاح توسعه نرم افزار برای این فرآیند بزرگتر با اصطلاح برنامه نویسی، پیاده سازی یا کدگذاری برای نوشتن واقعی کد استفاده می شود.

مهندسی نرم افزار تکنیک های مهندسی را با شیوه های توسعه نرم افزار ترکیب می کند. مهندسی معکوس یک فرآیند مرتبط است که توسط طراحان، تحلیلگران و برنامه نویسان برای درک و ایجاد مجدد/اجرای مجدد استفاده می شود.

سایت های آموزش برنامه نویسی زیادی در این زمینه وجود دارد که الکامکو یکی از آنهاست.