Huvudskillnad: Abstraktion och inkapsling är datorvetenskapliga programkoncept. En abstraktion är en process, där de extra egenskaperna hos data tas bort eller separeras från data; medan en inkapsling är en mekanism, i vilken data är gömd och buntad i metoder.
Abstraktion är en generaliserad process där extra data tas bort och tas bort för att göra data konkreta. I datorer är det en programmeringsmetod som hjälper till att konvertera data till en kortfattad form. Uppgifterna och programmet ändras inte med den här metoden utan de hålls i samma inledningsform. Den enda skillnaden är att de reduceras till en mindre presentabel form. Abstraktion försöker minska och fakta ut detaljerna, så att programmeraren kan fokusera på några koncept åt gången.
Ett system kan ha många sådana abstraktionslager, som har olika betydelser och detaljer. Till exempel exponerar lågnivå abstraktionslager detaljerna för datormaskinvaran där programmet körs, medan högnivålager hanterar programmets affärslogik. Dessa detaljer exponeras sedan för programmeraren vid tidpunkten för utförandet. Abstraktion är ett koncept eller en idé, som inte är kopplad till någon särskild instans. Det fångar endast de uppgifter om de uppgifter som berör dess föremål och nuvarande perspektiv. Det spelar en stor roll i objektets familj (i begreppen Objektorienterad-Programmering). och används på olika sätt och implementeringar.
Begreppet abstraktion kan implementeras i:
- Kontroll Abstraktion: Det är abstraktionen av handlingar.
- Data Abstraction: Det tillåter och hanterar databitar och datastrukturer på meningsfulla sätt.
Inkapsling i datorprogrammering lyfter fram sina funktioner i två olika noteringar, de är som:
- En språkmekanism som begränsar åtkomsten till vissa objektets komponenter.
- En språkkonstruktion som underlättar buntning av data med metoderna (och andra funktioner) som fungerar på den data.
Inkapsling är gömningsmekanismerna, som spelar en viktig roll för att skydda och säkra data från utomstående. Det ger faktiskt grundläggande integritet till data genom att förhindra missbruk av verkliga data. Vid inkapsling lagras och öppnas data i sitt ursprungliga giltiga och konsekventa format.
I allmänhet innebär inkapsling att ett objekt skyddas av användaren och representerar det i en allmän form. I inkapsling är de extra detaljerna dolda från omgivningen. Objektfälten inspekteras och manipuleras direkt i denna mekanism. Informationen som gömmer sig tillsammans med inredningen är sammanställd i en version som vidare används som källkod och är gränsad via en headerfil. Ibland försöker de offentliga klasserna tillgång till data, i dessa fall tillåter inkapslingen inte att de offentliga invaderarna spelar med data. En av de största fördelarna med inkapsling är att det hjälper till att minska komplexiteten i ett program och hjälper användarna att förstå programmets exakta begrepp, eftersom mekanismerna endast representerar programmets koncisa form. Detta ökar robustheten genom att låta utvecklaren eller programmeraren begränsa de olika beroenden mellan programkomponenter. Inkapsling är också tillämplig på vissa språk som, Smalltalk och Ruby, där åtkomst endast tillåts via objektmetoder. medan de flesta andra gillar, C ++, C # eller Java erbjuder en viss kontroll till programmeraren. Dessa språk tillåter utvecklarna att komma åt över det som är dolt med hjälp av nyckelord som offentliga och privata.
Abstraktionen och inkapslingen är också viktiga underlag i OOP (Object Oriented-Programming).
Jämförelse mellan abstraktion och inkapsling:
Abstraktion | inkapsling | |
Kort beskrivning | Abstraktion är en process som extraherar de väsentliga detaljerna om ett objekt eller en grupp av objekt och ignorerar de inessiella detaljerna. | Inkapsling är en process som omsluter eller omsluter data i en kapsel eller gör datakonsekvenserna noggranna. |
Dom är | Abstraktion avser tanken att gömma data som inte behövs för presentation. | Inkapsling samlar ihop data och funktionalitet. |
Grundfunktioner | I grund och botten används abstraktion för att dölja oönskade data och det ger relevanta uppgifter. | I grund och botten innebär inkapsling att koden och data döljs i en enda enhet för att skydda data från omvärlden. |
När är de Operated | Det driver problemet på designnivå. | Den hanterar problemet på implementeringsnivå. |
Gynnsamt för rollerna | Det hjälper användaren att fokusera på vad objektet gör istället för hur det gör någon funktion. | Det hjälper programmeraren att gömma de interna detaljerna eller mekanikerna om hur ett objekt gör någonting. |
Informationen är | Här separeras informationen från den verkliga data. | Här förpackas informationen i ett dolt format. |
layouter | Det handlar om den yttre layouten, som används i form av design. | Det handlar om den inre layouten, vilken används i form av implementering. |
Till exempel | Den yttre utseendet på en mobiltelefon, som har en bildskärm och knappsatsknappar för att ringa ett nummer. | Inbyggd detaljbeskrivning för en mobiltelefon, hur knappsatsen och bildskärmen är anslutna till varandra med kretsar. |