Od vremena kada je čovječanstvo smislilo prvi programirljivi uređaj, stvoreno je više od dvije hiljade programskih jezika. I svake godine njihov broj neprestano raste. Oni pomažu u uspostavljanju komunikacije između različitih uređaja u složenoj tehničkoj opremi.
Programski jezik je formalni sistem znakova koji se koristi pri pisanju računarskih programa. Oni se pokoravaju raznim pravilima (leksička, semantička i sintaksička) koja određuju izgled programa i radnje koje računar mora izvršiti. Postoji veliki broj klasa programskih jezika koji su najprikladniji za odabranu predmetnu oblast, čak postoje i iskreno komični. Zovu se ezoterični i nisu namijenjeni praktičnoj upotrebi. Na primjer, postoje jezici koji imaju književnu sintaksu (Shakespeare, Chef), jezici dizajnirani da otežavaju pisanje koda (Malbolge, ALPACA) ili s neljudskom logikom - Var'aq (koristi logiku klingonskog jezika) trka iz filma Zvjezdane staze). I ostali strip jezici, ali osim stripa postoji i veliki broj profesionalnih. Glavna klasa koja se trenutno koristi su objektno orijentisani jezici. Ovo je visok nivo koji je namijenjen za pisanje i malih programa i velikih softverskih sistema. Glavni predstavnici ove klase su Java, C #, C ++, Ruby, Python, a takođe treba napomenuti i logičke programske jezike. Oni se temelje na automatskoj teoremi koja dokazuje paradigmu i temelje se na teoriji matematičke logike. Najpoznatiji programski jezik logike je Prolog. Koristi logiku predikata prvog reda. Unatoč velikom broju stvorenih jezika i njihovoj funkcionalnosti, uvijek je potrebno odabrati prave alate za stvaranje softverskih proizvoda. Na primjer, ako trebate implementirati klijent-poslužiteljsku aplikaciju, onda, očito, logički jezik nije pogodan za to. Stoga je potrebno odabrati onu koja je najprikladnija za rješavanje zadatka.