U informatici, tip objekta je bilo koja stavka u računalnom programu koju računalni program može na neki način izmijeniti ili promijeniti. Tipovi objekata su podklase tipova podataka. Tipovi podataka jednostavno se odnose na vrstu informacija koju predstavlja svaka stavka. Vrsta objekta često ima određeni skup atributa koji se mogu promijeniti u različite vrijednosti. U objektno orijentiranom programiranju, tip objekta odnosi se na specifičnu stavku izgrađenu iz klase — skup pravila koja djeluju kao smjernice za izgradnju novih objekata.
Da biste zamislili objekt, najbolje je zamisliti izgradnju kuće. Računalni programski jezici, kao što su Java ili C++, su alati koji se koriste za izgradnju kuće. Skup pravila i smjernica, često poznatih kao klasa, pokazuje koje se vrste kuća mogu izgraditi iz programa. Tipovi objekata su poput ovih metaforičkih kuća.
Ako programer želi izgraditi kuću s dvoja vrata i dva prozora, može unijeti te vrijednosti i stvoriti objekt. Ovaj novi objekt slijedi pravila koja je postavila njegova klasa, ali gleda specifikacije računalnog programa za njegove karakteristike kao što su broj vrata i prozora. Drugi programer može izgraditi objekt iz iste klase, ali postaviti drugačiji broj vrata i prozora.
Metafora kuće prevodi se u virtualni svijet računalnog programiranja jer tip objekta mora slijediti određene smjernice da bi funkcionirao, baš kao što se kuća mora sastaviti prema nacrtu. Objektno orijentirano programiranje uvelike se oslanja na tipove objekata za stvaranje novih programa uz korištenje najmanje količine potrebnog koda. To smanjuje mogućnost pogrešaka u kodu i ubrzava proces stvaranja programa od nule.
Korištenje objekata u objektno orijentiranom programiranju ima izrazitu prednost u odnosu na druge tipove programiranja. Smjernice za svaki objekt su već određene. Sve što programer mora učiniti je odlučiti koju vrstu objekta želi koristiti, a zatim postaviti sve posebne atribute koje želi da taj tip objekta ima.
Vrste objekata ključ su za pokretanje bilo kojeg računalnog programa. Svaki od njih služi određenoj funkciji, kao što je dohvaćanje podataka s poslužitelja ili reagiranje na unos koji je unio korisnik, a stvaranje više objekata koji rade zajedno je ono što pokreće dio softvera. Računalni programer mora razumjeti kako objekt radi i koje varijable mu dodijeliti. Tada se programski kod može izvoditi iza scene dok korisnik može koristiti lako razumljivo sučelje za interakciju s programom.