programmeerimine, kus andmestruktuurid seotakse operatsioonidega, mida saab rakendada objektide loomisel