Összetett típus

A komplex (kompozit, kompozit) típus  olyan adattípus, amelynek objektumai (változói vagy állandói) a programozó számára elérhető belső struktúrával rendelkeznek.

A különböző programozási nyelvekben az alapvető komplex típusok halmaza némileg eltérhet (gyakrabban névben és megvalósítási részletekben). Vannak azonban objektív kritériumok - az elemek egységessége és a hozzáférés módja, amelyek lehetővé teszik az összetett típusok fő képviselőinek kiemelését (a neveket Pascal példáján adjuk meg , amelyben N. Wirth a legvilágosabban fogalmazott ezek az ötletek).

Ez a lista természetesen nem is tartalmazza a nyelvekben előre definiált összes típust, de a programozók által modellezett adatszerkezetek többségét tükrözi.

Nagyon fontos, szintén a XX. század 60-70-es éveinek fordulóján született gondolat a kívánt szerkezetek önkényes megépítésének lehetősége előre meghatározott típusok kis halmazából. Minél megfelelőbben modellezte a programozó a feldolgozott adatokat egy ilyen "konstruktor" keretein belül, annál hibamentesebb és tartósabb lesz a kifejlesztett program.