Aihesuuntautunut ohjelmointi ( englanniksi subject-oriented programming, SOP ; jäljempänä SOP ) on tapa rakentaa oliojärjestelmiä oppiaineiden yhdistelmänä . Yksiselitteistä yleisesti hyväksyttyä käännöstä termistä aihesuuntautunut ohjelmointi ei ole vielä kehitetty venäjäksi [1] .
Yleensä SOP sisältää:
SOP täydentää olio-ohjelmointia (jäljempänä OOP) ratkaisemalla ongelmia, jotka syntyvät suurten järjestelmien kehittämisessä, integrointi- ja siirrettävyysongelmia ratkaistaessa.
SOP :n aihe on kokoelma luokkia tai luokkaosia, jotka edustavat omaa (subjektiivista) luokkahierarkiaansa. Aihe voi olla itse hakemus tai osa hakemuksesta, joka yhdistettynä muihin oppiaineisiin antaa koko hakemuksen. Aihekokoonpano yhdistää luokkahierarkian siten, että saadaan uusia aineita, jotka sisältävät olemassa olevien oppiaineiden toiminnallisuuden.