Kodeerimise teooria on matemaatika valdkond, mis keskendub tõhusale andmete ja sõnumite edastamisele. Seda kasutatakse tavaliselt arvutiteaduses teabe kodeerimiseks, salvestamiseks, edastamiseks ja turvamiseks. Lisaks kasutatakse kodeerimise teooriat krüptograafias, kommunikatsioonitehnoloogias ja masinõppes.
Kodeerimise teooria eesmärk on tagada saatja ja vastuvõtja vaheline tõhus side ning vähendada edastamisel tekkivate vigade arvu. Kodeerimise teooria kasutab kahte peamist tehnikat, mida nimetatakse veaparanduskoodideks (ECC) ja veatuvastuskoodideks (EDC). Mõlemad tehnikad hõlmavad teabe kodeerimist sellisel viisil, et edastusvigu saab tuvastada või parandada.
Veaparanduskoode kasutatakse edastuse ajal vigade tuvastamiseks ja parandamiseks. Need koodid põhinevad matemaatilisel põhimõttel ja võimaldavad tuvastada ja parandada vigu, lisades andmetele edastamise ajal lisateavet.
Vigade tuvastamise koode kasutatakse vigade tuvastamiseks ilma neid parandamata. Need koodid põhinevad tsüklilise koondamise kontrolli (CRC) kontseptsioonidel ja kasutavad seejärel valede andmete tuvastamiseks kontrollsummasid.
Kodeerimise teooria on olnud aluseks krüpteerimistehnikate ja turvaliste sidesüsteemide, näiteks sõjaväe- ja ettevõtete võrkudes kasutatavate süsteemide väljatöötamisel. Kodeerimise teooriat on rakendatud ka andmete salvestamise nõuete puhul, näiteks CD-plaatide, videote, magnetlintide ja kõvaketaste puhul.
Kodeerimise teoorial on palju praktilisi rakendusi ja seda kasutatakse laialdaselt telekommunikatsioonitööstuses. Traadita side tehnoloogiad, nagu 3G, 4G ja 5G, sõltuvad tõhusa ja turvalise andmeedastuse tagamiseks suuresti kodeerimise teooriast. Lisaks on kodeerimise teooriat kasutatud võrguprotokollide (nt TCP ja IP) väljatöötamisel, mis vastutavad usaldusväärse ja tõhusa andmete edastamise eest Internetis.
Kodeerimise teooria on oma tagasihoidlikust algusest matemaatika haruna kaugele jõudnud. Sellisena on see nüüd hästi väljakujunenud ja samal ajal arenev valdkond, mis on olnud kaasaegsete kommunikatsioonitehnoloogiate arendamiseks hädavajalik.