Forskjellen mellom AOP og OOP

Forskjellen mellom AOP og OOP
Forskjellen mellom AOP og OOP

Video: Forskjellen mellom AOP og OOP

Video: Forskjellen mellom AOP og OOP
Video: CLASSICAL LIBERALISM vs. NEOLIBERALISM | What's the difference? Quick comparison & clear distinction 2024, Juli
Anonim

AOP vs OOP

AOP (Aspekt-orientert programmering) og OOP (Objektorientert programmering) er to programmeringsparadigmer. Et programmeringsparadigme er en grunnleggende stil innen dataprogrammering. Programmeringsparadigmer er forskjellige i hvordan hvert element i programmene er representert og hvordan hvert trinn er definert for å løse problemer. Som navnet antyder, fokuserer OOP på å representere problemer ved bruk av objekter fra den virkelige verden og deres oppførsel, mens AOP tar for seg å bryte ned programmene i å skille tverrgående bekymringer.

Hva er AOP?

AOP er et programmeringsparadigme som omhandler å bryte ned et program i sammenhengende funksjonsområder (k alt bekymringer) som går på tvers av flere områder, for å øke modulariteten. Støtte for abstraksjoner (som klasser, metoder osv.) for å gruppere og innkapsle bekymringer i unike enheter er gitt i mange andre programmeringsparadigmer. Men bekymringer (som "logging") er eksempler på tverrgående bekymringer, fordi alle loggede deler av systemet påvirkes av strategien som brukes for logging. Hovedfokuset for alle AOP-implementeringer er å ha passende tverrgående uttrykk for å fange opp alle bekymringer på ett enkelt sted.

Hva er OOP?

I OOP er fokuset på å tenke på problemet som skal løses i form av elementer fra den virkelige verden, og representere problemet i form av objekter og deres oppførsel. Klasser skildrer abstrakte representasjoner av objekter i den virkelige verden. Klasser er som tegninger eller maler, som samler lignende gjenstander eller ting som kan grupperes sammen. Klasser har egenskaper som kalles attributter. Attributter implementeres som globale og instansvariabler. Metoder i klassene representerer eller definerer oppførselen til disse klassene. Metoder og attributter til klasser kalles medlemmene av klassen. En forekomst av en klasse kalles et objekt. Derfor er et objekt en datastruktur som ligner mye på et objekt i den virkelige verden.

Det er flere viktige OOP-konsepter som Dataabstraksjon, Encapsulation, Polymorphism, Messaging, Modularity og Inheritance. Vanligvis oppnås innkapsling ved å gjøre attributtene private, mens man oppretter offentlige metoder som kan brukes for å få tilgang til disse attributtene. Arv lar brukeren utvide klasser (k alt underklasser) fra andre klasser (k alt superklasser). Polymorfisme lar programmereren erstatte et objekt i en klasse i stedet for et objekt i superklassen. Vanligvis blir substantivene som finnes i problemdefinisjonen direkte klasser i programmet. Og på samme måte blir verb metoder. Noen av de mest populære OOP-språkene er Java og C.

Hva er forskjellen mellom AOP og OOP?

Nøkkelforskjellen mellom OOP og AOP er at fokuset til OOP er å bryte ned programmeringsoppgaven i objekter, som kapsler inn data og metoder, mens fokuset til AOP er å bryte ned programmet i tverrgående bekymringer. Faktisk er AOP ikke en konkurrent til OOP, fordi det dukket opp fra OOP-paradigmet. AOP utvider OOP ved å løse noen av problemene. AOP introduserer smarte måter å implementere tverrgående bekymringer (som kan ha vært spredt over flere steder i den tilsvarende OOP-implementeringen) på ett enkelt sted. Derfor gjør AOP programmet renere og mer løst koblet.

Anbefalt: