Otkad je čovječanstvo izmislilo prvi programirljivi uređaj, stvoreno je više od dvije tisuće programskih jezika. I svake godine njihov broj neprestano raste. Oni pomažu uspostaviti komunikaciju između različitih uređaja u složenoj tehničkoj opremi.
Programski jezik formalni je znakovni sustav koji se koristi pri pisanju računalnih programa. Oni se pokoravaju raznim pravilima (leksička, semantička i sintaksička) koja određuju izgled programa i radnje koje računalo mora izvesti. Postoji velik broj klasa programskih jezika koji su najprikladniji za odabrano predmetno područje, ima čak i onih iskreno komičnih. 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) utrka iz filma Zvjezdane staze). I ostali strip jezici, ali osim stripa postoji i veliki broj profesionalnih. Glavna klasa koja se trenutno koristi su objektno orijentirani jezici. Ovo je visoka razina namijenjena pisanju i malih programa i velikih softverskih sustava. Glavni predstavnici ove klase su Java, C #, C ++, Ruby, Python. Također treba napomenuti logičke programske jezike. Oni se temelje na automatskoj teoremi koja dokazuje paradigmu i temelje se na teoriji matematičke logike. Najpoznatiji logički programski jezik 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, tada, očito, logični jezik nije prikladan za to. Stoga je potrebno odabrati onu koja je najprikladnija za rješavanje zadatka.