Pojem datovy typ klasifikuje typy ako floating-point, integer, boolean, ktora urcuju mozne hodnoty typov a operacie, ktore nad nimi mozu byt vykonane. Datovym typom je dana aj interpretacia
Primitivny datovy typ oznacuje zakladny datovy typ, pre ktory programovaci poskytuje podporu by default. Napriklad int v jave ale moze sa jednat aj o spojovy zoznam a dalsie sofistikovanejsie typy.
Datovy typ je elementarny, ak obsahuje jedinu atomicku hodnotu.
Datovy objekt je strukturovany, ak sa sklada zo "zloziek", napr. zoznam.
Datovy typ, ktoreho hodnota sa moze zmenit, napr. priradenim sa nazyva premenna. Inak to je konstanta. Meno premennej sa nazyva identifikator. (char, int je literal).
Niektore jazyky pouzivaju typovane premenne - takze urcia datovemu typu indentifikator konstantneho typu. Takze int bude int az kym to neprepisem.
Objekt je takisto datovym typom, ktory ma svoju identitu, ktora urcuje, cim sa odlisuje od inych objektov, stav objektu popisuje data ulozene v objekte a spravanie, teda metody a funkcie. Objekty (v OOP) podporuju zapuzdrenie, co znamena, ze mozme odtienit casti objektu od vonkajsieho sveta. Vyhodou zapuzdrenia je modularita a zabezpecenie. Objekty podporuju aj polymorfizmus (v niektorych jazykoch). Polymorfizmus je vlastnost objektu, urcujuca jeho chovanie. Pokial viac objektov ponuka to iste rozhranie, tak s nimi pracujeme rovnakym sposobom, ale spravanie sa lisi. Podporovana je aj dedicnost a teda hierarchicky pristup. Spojenim dedicnosti a polymorfizmu dostaneme OOP.