Shpjegoni dallimet midis dy subjekteve.
Programimi i orientuar ndaj objekteve dhe programimi funksional
Programimi i orientuar ndaj objekteve është një paradigmë programimi që rrotullohet rreth objekteve që përmbajnë të dhëna dhe sjellje të kapsulimit. Programimi funksional është një paradigmë programimi ku funksionet trajtohen si qytetarë të klasës së parë të gjuhës, që do të thotë se ato mund të përdoren si hyrje ose dalje të funksioneve të tjera. Programimi i orientuar ndaj objekteve përqendrohet në abstraktimin dhe kapsullimin e të dhënave, ndërsa programimi funksional përqendrohet në krijimin e pjesëve të vogla, të ripërdorshme të funksionalitetit. Programimi i orientuar ndaj objekteve zakonisht përdor një hierarki trashëgimi për të krijuar nëntipe të ndryshme të objekteve, ndërsa programimi funksional favorizon përbërjen e të dhënave për të krijuar struktura më të mëdha. Kodi i orientuar ndaj objekteve ka tendencë të jetë më i përfolur dhe përqendrohet rreth ndërveprimeve midis objekteve, ndërsa kodi funksional ka tendencë të jetë më i shkurtër, i përqendruar në prodhimin e të dhënave nga hyrja.