Los lenguajes de programación permiten expresar algoritmos de manera precisa para controlar el comportamiento de las computadoras. Existen lenguajes de bajo nivel cercanos a la máquina y lenguajes de alto nivel más cercanos al lenguaje humano. Los compiladores traducen el código fuente a lenguaje de máquina para su ejecución, mientras que los intérpretes lo ejecutan directamente. Los lenguajes de cuarta generación generan aplicaciones de forma automática a partir de parámetros definidos por el usuario.