Articles

Introduktion av objektorienterade programmeringsspråk: en Guide

objektorienterade programmeringsspråk använder objekt som innehåller både data och kod. Principerna för objektorienterad programmering är inkapsling, abstraktion, polymorfism och arv.

objektorienterad programmering (OOP) språk finns överallt vi ser. Många av de mest använda kodningsspråken som utgör datorvärlden idag är objektorienterade. Faktum är att många datorprogram och mycket av innehållet på webben bygger på objektorienterade språk på hög nivå. Att förstå hur objektorienterade språk fungerar och varför de är användbara är viktigt för nästan varje karriär inom databehandling.

i den här artikeln ska vi ta en titt på vilka objektorienterade språk som är och undersöka deras fördelar och nackdelar. Vi tar också en titt på en lista över några av de mest populära OOP-språken som används idag.

Vad är ett programmeringsspråk?

ett programmeringsspråk är en uppsättning regler och procedurer som gör det möjligt för programmerare att ge datorer en uppsättning instruktioner att utföra. Varje programmeringsspråk har sin egen syntax, som en gång lärt sig låter dig berätta för en dator vilka uppgifter den ska utföra.

form-submissionform-inlämning

hitta din bootcamp match
  • karriär karma matchar dig med top tech bootcamps
  • få exklusiva stipendier och prep kurser

div >

tänk på det här sättet. Engelska är ett språk som låter dig kommunicera med engelsktalande. När du känner till de grundläggande reglerna i Engelska, Du kan prata med någon annan som förstår samma regler. Men datorer kan inte förstå engelska eller något annat ”traditionellt” språk för den delen.

Vad är objektorienterade programmeringsspråk?

datorer är kraftfulla maskiner. Med en dator kan vi beräkna siffror extremt snabbt, och vi kan producera fantastiska program för många applikationer. Men för att dra nytta av denna kraft måste vi kommunicera med datorn är något mindre smärtsamt än att manuellt skriva och nollor.

därför har vi programmeringsspråk, som stöds av maskinkod som redan har skrivits. Men ju längre bort vi får från maskinkod desto mer abstrakta och specialiserade språk blir det för att hantera data. Det är därför vi har så många språk; inget språk är perfekt, och de har alla olika och överlappande applikationer.

programmeringsparadigmer

till denna anteckning separeras programmeringsspråk ofta av deras programmeringsparadigm. Ett programmeringsparadigm är ett sätt att titta på och komma åt data. De två primära paradigmerna är objektorienterade och funktionella, även om det finns många fler (inklusive några som är underliggande principer för ovanstående).

objektorienterad programmering är uppbyggd kring objekt, som är datastrukturer som innehåller både data (Egenskaper eller attribut) och kod (procedurer eller metoder). Objekt kan modifiera sig med ’detta’ eller ’själv. På de flesta OOP-språk är nästan allt ett objekt som kan ha både värden och körbar kod. Varje objekt är unikt, och även om det kan vara en kopia av ett annat objekt kan dess variabler skilja sig från alla andra objekts variabler.

objekten i objektorienterad mjukvarudesign kan ses som faktiska objekt. Tänk på ett objekt, som en klocka. Den klockan har egenskaper. Den är gjord av metall, den är svart, den har en specifik vikt. Men det objektet gör också saker. Det visar tiden, och det kan också påverka sig själv genom att snurra växlar för att ändra händerna på händerna.

en annan egenskap hos objekt är att vi inte alltid behöver veta hur klockan fungerar för att få den att fungera. Förutsatt att klockan är välbyggd kommer den på ett tillförlitligt sätt att berätta för tiden, utan att vi behöver störa dess inre arbete.

objektorienterade språk har objekt som liknar verkliga objekt. De kan ha egenskaper och funktioner. De tenderar också att följa en viss uppsättning principer.

objektorienterade programmeringsprinciper

objektorienterade språk har fyra principer. Dessa fyra principer är gemensamma egenskaper som definierar dem och gör dem betydligt effektivare. Vissa människor kallar dem de fyra pelarna i objektorienterad programmering.

de fyra pelarna i objektorienterad programmering är:

  1. inkapsling
  2. abstraktion
  3. arv
  4. polymorfism

de fyra principerna

låt oss utforska dessa fyra principer i större djup.

  • inkapsling – inkapsling är begreppet bindande data till funktioner, som fungerar som en säkerhetsfunktion för att hålla dessa data säkra. Till exempel förhindrar många OOP-språk något annat än specifika metoder i klassen som äger data för att komma åt den data. Detta görs ofta uttryckligen för att hålla vissa data säkra.abstraktion-abstraktion är tanken att om du gör en sak för ofta, bör det vara sin egen enhet. Till exempel, om en programmerare upprepade gånger skriver om samma funktion för olika objekt, kan den funktionen abstraheras för att bli sin egen enhet.
  • arv-arv är vad det låter som, och definieras oftast som en ”är en” relation. Det låter vissa klasser vara under paraplyet för andra klasser. Dessa klasser kan ärva information och funktionalitet från den klassen, samtidigt som de kan expandera på den funktionaliteten. Det låter oss återanvända kod som vi redan har skrivit i andra klasser.
  • polymorfism-polymorfism betyder ’ att ta mer än en form.’I betydelsen av OOP-språk hänvisar det till förmågan att hantera objekt olika beroende på vad de är. Det gör att vi kan definiera olika metoder för hantering av objekt baserat på deras härledda klass. Om vi till exempel behövde hitta storleken på något kan vi ändra hur vi mäter det baserat på vad det är. Om det är en planka av trä, skulle jag mäta den i tum. Detta är i motsats till en volym vatten, som jag skulle mäta efter vikt. Om vi använder polymorfism kan vi skapa en funktion som kan acceptera något av objekten och ändå ge oss en sund mätning.

populära objektorienterade programmeringsspråk

Java, Python, C++, Lisp och Perl är alla exempel på populära objektorienterade programmeringsspråk. De stöder programmering med hjälp av klasser och objekt paradigm.

fem av de mest populära objektorienterade språken inkluderar:

  1. Java
  2. Python
  3. C++
  4. Ruby
  5. C #
  • Java – Java är överallt, och det är ett av de mest använda och efterfrågade språken genom tiderna. Java motto är’ Skriv en gång, kör var som helst, ’ och det återspeglas i antalet plattformar den körs på och platser den används.
  • Python-Python är allmänt ändamål och används på många ställen. Python har dock ett starkt fotfäste i maskininlärning och datavetenskap. Det är ett av de föredragna språken för det nya och ständigt växande fältet.
  • C++ – C++har hastigheten på C med klassens funktionalitet och ett objektorienterat paradigm. Det är ett sammanställt, pålitligt och kraftfullt språk. Faktum är att det till och med används för att bygga kompilatorer och tolkar för andra språk.
  • Ruby-Ruby är ett annat allmänt programmeringsspråk. Det byggdes för enkelhet. Med det sagt är Ruby ett otroligt kraftfullt språk. Skaparen av Ruby, Yukihiro ”Matz” Matsumoto, har sagt, ” Ruby är väldigt enkel i utseende, men är väldigt komplex inuti, precis som vår mänskliga kropp.”
  • C# – C# är ett programmeringsspråk designat av Microsoft. Det var utformat för att förbättra befintliga koncept i C. C# driver Microsoft.NET framework tillsammans med många webbappar, spel, stationära appar och mobilappar.

det finns andra objektorienterade språk som vi inte har täckt ovan. Perl, Objective-C, Dart, Lisp, JavaScript och PHP är alla objektorienterade också eller stöder objektorienterade principer.

fördelarna och nackdelarna med objektorienterade programmeringsspråk

medan OOP-språk kan vara kraftfulla, är de inte användbara för varje situation och kommer med lite bagage som måste beaktas.

Pros

återanvändbarhet

objektorienterad kod är extremt modulär genom design. På grund av polymorfism och abstraktion kan du skapa en funktion som kan användas om och om igen. Du kan också kopiera information och funktionalitet som redan har skrivits med arv. Detta sparar tid, minskar komplexiteten, sparar utrymme och gör kodningen till en lättare belastning på våra fingrar.

parallell utveckling

det finns tillräckligt med grund för att delar av programmet ska utvecklas separat från varandra och fortfarande fungera under objektorienterade principer. Detta gör samtidig utveckling mycket lättare för större utvecklingsteam.

underhåll

eftersom de flesta, om inte alla, av vår kod är på ett ställe, kallas och återanvänds, är den koden mycket lättare att underhålla. Istället för att behöva individuellt fixa hundra olika instanser där en funktion kallas, kan vi fixa den modulära och polymorfa funktionen.

säkerhet

medan de flesta språk har viss säkerhet är objektorienterade språk praktiska eftersom säkerhet är inbyggd med inkapsling. Andra metoder och klasser kan inte komma åt privata data som standard, och program skrivna på OOP-språk är säkrare för det.

modularitet

objektorienterade programmeringsspråk dela upp en applikation I objekt och klasser. Detta är fördelaktigt eftersom det ger din applikation en mer modulär struktur. Modulär kod är lättare att läsa. Därför är det lättare att underhålla.

nackdelar

ofta rörigt

eftersom objektorienterade språk är så anpassningsbara och skalbara kan det vara lätt att förlora en förståelse för hur koden fungerar. OOP-kod kan fungera på många sätt. Det finns många metoder för programmering i OOP som inte fungerar bra med andra metoder, är ineffektiva eller är svåra att använda.

kräver mer planering

eftersom dessa språk är så modulära och skalbara, att gå in utan en tydlig design i förväg är ett recept på katastrof. Att skapa ett effektivt program kräver en solid plan, mer än med andra programmeringsparadigmer.

opacitet

detta är lika mycket ett proffs som det är en con. objekt och funktioner kan fungera oberoende. De kan ta in information och (vanligtvis) returnera tillförlitliga resultat. Som ett resultat kan de bli svarta lådor, vilket innebär att det de gör inte alltid är uppenbart. Medan programmeraren förmodligen skapade det objektet och vet vad det gör, är OOP-språk helt enkelt inte lika transparenta som andra språk.

prestanda

objektorienterade språk tar ofta en prestationshit. Program som görs på OOP-språk är ofta större och kräver mer beräkningsinsats att köra än funktionella språk. Detta är dock inte alltid sant eller viktigt. C++ är ett OOP-språk, men det är ett av de snabbaste tillgängliga språken. På samma anteckning är hastighet inte alltid viktigt. Skillnaden i hastighet blir bara uppenbar vid bearbetning av stora eller komplexa beräkningar eller i fall där extrem hastighet krävs.

nu har du ett fast grepp om vad ett objektorienterat språk är, vad det är bra för och vilka är de mest populära. Programmering på dessa språk kan vara lika roligt som det är lönsamt, och din karriär inom utveckling är bara några steg bort.