Un programa informático es un conjunto de instrucciones que indican a un ordenador lo que debe hacer. Se compone de una secuencia de instrucciones y/o estructuras de datos, y suele constar de un bucle do, un bucle while y/o un bucle for. Las instrucciones se escriben en un lenguaje de programación, como C, Java, Python u otros. Un programa informático también se denomina programa de software.
Los programas informáticos se utilizan para realizar diversas tareas, como cálculos, procesamiento de datos u operaciones de sistemas, entre otras. Los programas informáticos pueden ser desde muy sencillos hasta muy complejos y pueden estructurarse de diversas maneras. Muchos programas de ordenador están escritos en un lenguaje de alto nivel, como C o Java, mientras que otros están escritos en lenguaje ensamblador.
Los programas informáticos pueden dividirse en dos grandes categorías: aplicaciones y software de sistema. El software de aplicación incluye programas como procesadores de texto, navegadores web, reproductores multimedia y editores de vídeo. Los programas de aplicación se utilizan para mejorar la experiencia del usuario y la productividad automatizando tareas mundanas y habilitando potentes funciones. El software de sistema incluye los programas necesarios para el funcionamiento del ordenador, como sistemas operativos, controladores de dispositivos y protocolos de comunicación. El software de sistema se encarga de controlar y gestionar el hardware del ordenador, así como de proporcionar servicios básicos para otros programas.
Además de programas informáticos, los sistemas informáticos también contienen datos, como instrucciones, documentos y archivos. Juntos, los programas y los datos constituyen la base de un sistema informático.
Los programas informáticos se desarrollan y mejoran constantemente para satisfacer las necesidades siempre cambiantes de los usuarios y las nuevas tecnologías. Como tal, la programación informática es un campo altamente técnico y especializado. Los interesados en crear programas informáticos y trabajar con ellos deben combinar conocimientos de informática, programación, lenguajes de programación y desarrollo de software.