Močno tipkanje je sistem tipov, ki se uporablja s programskimi jeziki in prisili programerja, da vnese kodo na poseben način, kot ga narekujejo sistem tipov in jezikovni standardi. Moč močnega tipkanja se lahko razlikuje, vendar večina sistemov tipov uporablja omejitve visoke trdnosti. To lahko ustavi večino ali vse neveljavne vnose, kar lahko pomaga preprečiti napake pri kodiranju. Nekateri programski jeziki omogočajo programerjem uporabo različnih celih števil, vendar ta sistem tipkanja omejuje pretvorbe. Uporabniku je vsiljena doslednost, kar je lahko koristno, vendar ta sistem tipkanja lahko odvzame tudi ustvarjalnost.
Ko nekdo uporablja komplet ali programski jezik z močnim tipkanjem, se lahko ta sistem tipkanja nastavi z visoko ali nizko stopnjo moči. Visoka moč pomeni, da sistem tipkanja uporabniku nalaga močne omejitve, medtem ko je nizka moč nekoliko bolj prizanesljiva z napakami in nedosledno kodo. Medtem ko se pri nekaterih sistemih uporablja nizka trdnost, je visoka trdnost veliko bolj pogosta, saj je prednosti tega sistema tipkanja najbolje ohraniti z visoko trdnostjo.
Programerji lahko pri ustvarjanju programa ustvarijo neveljavne vnose, bodisi kot napako bodisi namenoma, da bi preizkusili novo kodiranje. S šibkim sistemom tipkanja bodo te napake šle skozi prevajalnik, kar lahko povzroči hude napake. Ko se uporablja močno tipkanje, bo programer opozorjen na te napake. Sistem tudi običajno zavrača prevajanje programiranja, dokler kodiranje ni popravljeno, kar zagotavlja minimalne napake.
Pri programiranju se pogosto uporabljajo cela števila, programski jezik pa včasih omogoča uporabnikom, da vnesejo cela števila, ki niso skladna z jezikom. Hkrati, če ima jezik orodje za pretvorbo, bo to pretvorilo cela števila, da jih je mogoče uporabiti. Močno tipkanje onemogoči to prakso in noče sprejeti nestandardnih celih števil.
Način, na katerega močno tipkanje nadzira uporabniško implementacijo programskega jezika, pomeni, da obstaja veliko prednosti in slabosti. To ne dopušča napak ali nestandardnega kodiranja, zato ta sistem tipkanja zagotavlja doslednost kodiranja. Prav tako običajno zagotavlja, da bo kodiranje delovalo, ko je prevedeno. Glavna pomanjkljivost je, da je ustvarjalnost močno omejena. Če uporabnik poskuša napisati kodiranje na način, ki je v nasprotju s standardi, tudi če bo sama koda delovala in je morda boljša od standardnega kodiranja, bo močno tipkanje še vedno onemogočilo kodiranje, dokler ga uporabnik ne standardizira.