Det finns några andra skillnader som kan förklaras med hjälp av jämförelsetabellen.
Jämförelsediagram
Basis för jämförelse | POP | OOP |
---|---|---|
Grundläggande | Förfarande / Strukturorienterad. | Objektorienterad. |
Närma sig | Top-down. | Botten upp. |
Grund | Huvudfokus ligger på "hur man får uppgiften", dvs. om förfarandet eller strukturen i ett program. | Huvudfokus ligger på datasäkerhet. Därför är det endast tillåtet att få tillgång till en grupps enheter. |
Division | Stort program är uppdelat i enheter som kallas funktioner. | Hela programmet är uppdelat i objekt. |
Enhetsåtkomstläge | Ingen åtkomstspecifikator observerad. | Access specifier är "offentliga", "privata", "skyddade". |
Överbelastning / Polymorfism | Varken det överbelasta funktioner eller operatörer. | Det överbelastar funktioner, konstruktörer och operatörer. |
Arv | Deras är ingen arv. | Erfarenhet uppnådd i tre sätt offentliga och skyddade. |
Data gömmer sig och säkerhet | Det finns inget korrekt sätt att dölja data, så data är osäkra | Data är dold i tre lägen offentliga, privata och skyddade. Därefter ökar datasäkerheten. |
Datadelning | Globala data delas mellan funktionerna i programmet. | Data delas mellan objekten genom medlemsfunktionerna. |
Vänfunktioner / klasser | Inget begrepp av vänfunktion. | Klasser eller funktion kan bli en vän till en annan klass med sökordet "vän". Obs! Sökordet "vän" används endast i c ++ |
Virtuella klasser / funktion | Inget begrepp virtuella klasser. | Begreppet virtuell funktion visas under arv. |
Exempel | C, VB, FORTRAN, Pascal | C ++, JAVA, VB.NET, C # .NET. |
Definition av objektorienterad programmering (OOP)
OOP: s huvudsakliga oro är att dölja data från icke-medlemsfunktioner i en klass, som den behandlar som "kritisk information". Data är nära knuten till medlemmens funktioner i en klass, som fungerar på den. Det tillåter inte någon funktion från någon annan att ändra data inuti den. Objekt kommunicerar med varandra genom medlemsfunktioner för att komma åt deras data.
OOP är utvecklad på grundbegreppet "objekt", "klasser", "datainkapsling eller abstraktion", "arv" och "polymorfism / överbelastning". I OOP kan programmen delas in i moduler genom att partitionera data och funktioner, vilket vidare kan användas som mallar för att skapa nya kopior av moduler, om så krävs.
Definition av procedurerad programmering (POP)
POP är ett vanligt sätt att programmera. Procedurell programmering är där det primära fokuset är att få uppgiften i en sekventiell ordning. Flödesdiagram organiserar flödet av kontroll av programmet. Om programmet är stort är det strukturerat i vissa små enheter som kallas funktioner, som delar globala data. Här uppstår bekymmer om datasäkerhet, eftersom det finns en oavsiktlig förändring av programmet genom funktioner.
Viktiga skillnader mellan OOP och POP
- POP är en procedurerad programmering medan OOP är en objektorienterad programmering.
- Huvudfokus för POP är på "hur man får uppgiften gjort" följer flödesschemat för att få uppgiften klar. OOP: s huvudfokus ligger på datasäkerhet, eftersom endast en klasss objekt får tillgång till attribut eller funktion för en klass.
- Funktionerna är små enheter av de stora programmen som utförs för att få den huvudsakliga uppgiften klar. I OOP-attribut och funktioner i klassen är uppdelade mellan objekten.
- I POP finns det inget specifikt åtkomstläge för åtkomst till attribut eller funktioner i programmet medan i OOP finns tre åtkomstlägen "offentliga", "privata", "skyddade" som används som en åtkomstdel för att få åtkomst till attribut eller funktioner .
- POP stöder inte begreppet överbelastning / polymorfism. OOP stöder Överbelastning / Polymorfism a vilket innebär att använda samma funktionsnamn för att utföra olika funktioner. Vi kan överbelasta funktioner, konstruktörer och operatörer i OOP.
- Det finns inget koncept för arv i POP medan OOP stöder arv som tillåter att använda attributet och funktionerna i andra klass genom att ärva det.
- POP är mindre säker jämfört med OOP eftersom i OOP begränsar åtkomstspecifikationen åtkomst till attribut eller funktioner som ökar säkerheten.
- I POP om vissa data ska delas bland alla funktioner i programmet deklareras globalt utanför alla funktioner. I OOP kan klassens datamedlem nås genom klassens medlemsfunktioner.
- I POP finns det inget begrepp för vänfunktionen, medan det i OOP finns ett begrepp med vänfunktion som inte är medlem i klassen men eftersom det är en vänmedlem kan den få tillgång till klassens data medlem och medlemsfunktioner.
- Det finns inget begrepp virtuella klasser i POP medan i virtuella funktioner stöder de virtuella funktionerna polymorfism.
Slutsats
Bristerna i POP uppstår behovet av OOP. OOP korrigerar bristerna i POP genom att introducera begreppet "objekt" och "klasser". Det förbättrar datasäkerheten och automatisk initiering och rensning av objekt. OOP gör det möjligt att skapa flera instanser av objektet utan störningar.