Articles

Introduktion af objektorienterede programmeringssprog: en Guide

objektorienterede programmeringssprog bruger objekter, der indeholder både data og kode. Principperne for objektorienteret programmering er indkapsling, abstraktion, polymorfisme og arv.

objektorienteret programmering (OOP) sprog er overalt, vi ser. Mange af de mest anvendte kodningssprog, der udgør computerverdenen i dag, er objektorienterede. Faktisk er mange computerprogrammer og meget af indholdet på nettet bygget på højt niveau, objektorienterede sprog. At forstå, hvordan objektorienterede sprog fungerer, og hvorfor de er nyttige, er vigtigt for næsten enhver karriere inden for computing.

i denne artikel skal vi se på, hvilke objektorienterede sprog der er, og undersøge deres fordele og ulemper. Vi vil også tage et kig på en liste over nogle af de mest populære OOP sprog i brug i dag.

Hvad er et programmeringssprog?

et programmeringssprog er et sæt regler og procedurer, der gør det muligt for programmører at give computere et sæt instruktioner til at udføre. Hvert programmeringssprog har sin egen syntaks, som, når den først er lært, giver dig mulighed for at fortælle en computer, hvilke opgaver den skal udføre.

form-submissionform-submission

find din bootcamp match
  • karriere karma matcher dig med top tech Bootcamps
  • få eksklusive stipendier og prep kurser

tænk på det på denne måde. Engelsk er et sprog, der giver dig mulighed for at kommunikere med engelsktalende. Når du kender de grundlæggende regler for engelsk, kan du tale med alle andre, der forstår de samme regler. Men computere kan ikke forstå engelsk eller noget andet “traditionelt” sprog for den sags skyld.

Hvad er objektorienterede programmeringssprog?

computere er kraftfulde maskiner. Med en computer kan vi beregne tal ekstremt hurtigt, og vi er i stand til at producere fantastiske programmer til mange applikationer. Men for at drage fordel af denne magt, er vi nødt til at kommunikere med computeren er noget mindre smertefuldt end manuelt at skrive dem og nuller.

derfor har vi programmeringssprog, som er understøttet af maskinkode, der allerede er skrevet. Men jo længere fjernet vi kommer fra maskinkode, jo mere abstrakte og specialiserede sprog bliver i håndtering af data. Derfor har vi så mange sprog; intet sprog er perfekt, og de har alle forskellige og overlappende applikationer.

programmeringsparadigmer

til denne note adskilles programmeringssprog ofte af deres programmeringsparadigme. Et programmeringsparadigme er en måde at se på og få adgang til data på. De to primære paradigmer er objektorienterede og funktionelle, selvom der er mange flere (inklusive nogle, der er underliggende principper for ovenstående).

objektorienteret programmering er bygget op omkring objekter, som er datastrukturer, der indeholder både data (Egenskaber eller attributter) og kode (procedurer eller metoder). Objekter er i stand til at ændre sig selv med ‘dette’ eller ‘selv.’På de fleste OOP-sprog er næsten alt et objekt, der kan have både værdier og eksekverbar kode. Hvert objekt er unikt, og selvom det kan være en kopi af et andet objekt, kan dets variabler være forskellige fra ethvert andet objekts variabler.

objekterne i objektorienteret programdesign kan tænkes som faktiske objekter. Tænk på et objekt, som et ur. Uret har egenskaber. Den er lavet af metal, den er sort, den har en bestemt vægt. Men det objekt gør også ting. Det viser tiden, og det kan også påvirke sig selv ved at dreje gear for at ændre hændernes position.

et andet træk ved objekter er, at vi ikke altid behøver at vide, hvordan uret fungerer for at få det til at fungere. Forudsat at uret er velbygget, vil det pålideligt fortælle tid, uden at vi behøver at forstyrre dets indre arbejde.

objektorienterede sprog har objekter, der ligner objekter i den virkelige verden. De kan have egenskaber og funktioner. De har også en tendens til at følge et bestemt sæt principper.

objektorienterede programmeringsprincipper

objektorienterede sprog kommer med fire principper. Disse fire principper er fælles egenskaber, der definerer dem og gør dem betydeligt mere effektive. Nogle kalder dem de fire søjler i objektorienteret programmering.

de fire søjler i objektorienteret programmering er:

  1. indkapsling
  2. abstraktion
  3. arv
  4. polymorfisme

De Fire Principper

lad os udforske disse fire principper i større dybde.

  • indkapsling – indkapsling er begrebet binding af data til funktioner, der fungerer som en sikkerhedsfunktion for at holde disse data sikre. For eksempel forhindrer mange OOP-sprog andet end specifikke metoder i klassen, der ejer dataene, for at få adgang til disse data. Dette gøres ofte eksplicit for at holde visse data sikre.abstraktion-abstraktion er ideen om, at hvis du laver en ting for ofte, bør det være sin egen enhed. For eksempel, hvis en programmør gentagne gange omskriver den samme funktion til forskellige objekter, kan denne funktion abstraheres for at blive sin egen enhed.
  • arv-arv er, hvad det lyder som, og er oftest defineret som et “er et” forhold. Det lader visse klasser være under paraplyen af andre klasser. Disse klasser kan arve information og funktionalitet fra den klasse, samtidig med at de kan udvide denne funktionalitet. Det lader os genbruge kode, som vi allerede har skrevet i andre klasser.
  • polymorfisme-polymorfisme betyder ‘ at tage mere end en form.’I betydningen OOP-sprog henviser det til evnen til at håndtere objekter forskelligt afhængigt af hvad de er. Det giver os mulighed for at definere forskellige metoder til håndtering af objekter baseret på deres afledte klasse. For eksempel, hvis vi havde brug for at finde størrelsen på noget, kan vi ændre, hvordan vi måler det ud fra, hvad det er. Hvis det er en planke af træ, ville jeg måle det i inches. Dette er i modsætning til en mængde vand, som jeg ville måle efter vægt. Hvis vi bruger polymorfisme, kan vi oprette en funktion, der kan acceptere begge objekter og stadig give os en fornuftig måling.

populære objektorienterede programmeringssprog

Java, Python, C++, Lisp og Perl er alle eksempler på populære objektorienterede programmeringssprog. De understøtter programmering ved hjælp af klasser og objekter paradigme.

fem af de mest populære objektorienterede sprog inkluderer:

  1. Java
  2. Python
  3. C++
  4. Ruby
  5. C#
  • Java – Java er overalt, og det er et af de mest anvendte og efterspurgte sprog nogensinde. Java ‘s motto er’ Skriv en gang, kør hvor som helst’, og det afspejles i antallet af platforme, det kører på, og steder, det bruges.
  • Python-Python er generelle formål og bruges i mange steder. Python har dog et stærkt fodfæste inden for maskinlæring og datalogi. Det er et af de foretrukne sprog for det nye og stadigt voksende felt.
  • C++ – C++har hastigheden på C med funktionaliteten af klasser og et objektorienteret paradigme. Det er et kompileret, pålideligt og kraftfuldt sprog. Faktisk er det endda brugt til at bygge kompilatorer og tolke til andre sprog.
  • Ruby-Ruby er et andet programmeringssprog til generelle formål. Det blev bygget for enkelhed. Med det sagt er Ruby et utroligt stærkt sprog. Skaberen af Ruby, Yukihiro “Matsumoto”, har sagt, ” Ruby er meget enkel i udseende, men er meget kompleks indeni, ligesom vores menneskelige krop.”
  • C# – C# er et programmeringssprog designet af Microsoft. Det var designet til at forbedre eksisterende koncepter i C. C# styrker Microsoft.NET-rammen sammen med mange internetapps, spil, desktop-apps og mobilapps.

der er andre objektorienterede sprog, som vi ikke har dækket ovenfor. Perl, Objective-C, Dart, Lisp, JavaScript og PHP er alle objektorienterede også eller understøtter objektorienterede principper.

fordele og ulemper ved objektorienterede programmeringssprog

mens OOP-sprog kan være magtfulde, er de ikke nyttige til enhver situation og kommer med noget bagage, der skal overvejes.

Pros

genanvendelighed

objektorienteret kode er ekstremt modulopbygget. På grund af polymorfisme og abstraktion kan du lave en funktion, der kan bruges igen og igen. Du kan også kopiere oplysninger og funktionalitet, der allerede er skrevet med arv. Dette sparer tid, reducerer kompleksiteten, sparer plads og gør kodning til en lettere belastning på vores fingre.

Parallel udvikling

der er nok grundlag for, at dele af programmet udvikles adskilt fra hinanden og stadig fungerer under objektorienterede principper. Dette gør samtidig udvikling meget lettere for større udviklingshold.

vedligeholdelse

fordi de fleste, hvis ikke alle, af vores kode er på et sted, bliver kaldt og genbrugt, er denne kode meget lettere at vedligeholde. I stedet for at skulle individuelt rette hundrede forskellige tilfælde, hvor en funktion kaldes, kan vi rette den ene modulære og polymorfe funktion.

sikkerhed

mens de fleste sprog har en vis sikkerhed, er objektorienterede sprog praktisk, fordi sikkerhed er indbygget med indkapsling. Andre metoder og klasser kan ikke få adgang til private data som standard, og programmer skrevet på OOP-sprog er mere sikre for det.

modularitet

objektorienterede programmeringssprog opdeler et program i objekter og klasser. Dette er gavnligt, fordi det giver din applikation en mere modulær struktur. Modulær kode er lettere at læse. Derfor er det lettere at vedligeholde.

ulemper

ofte rodet

fordi objektorienterede sprog er så tilpasselige og skalerbare, kan det være let at miste en forståelse af, hvordan koden fungerer. OOP-kode kan fungere på mange måder. Der er mange metoder til programmering i OOP, der ikke fungerer godt med andre metoder, er ineffektive eller er vanskelige at bruge.

kræver mere planlægning

fordi disse sprog er så modulære og skalerbare, at gå ind uden et klart design på forhånd er en opskrift på katastrofe. Oprettelse af et effektivt program kræver en solid plan, mere end med andre programmeringsparadigmer.

opacitet

Dette er lige så meget en pro, som det er en con. objekter og funktioner kan fungere uafhængigt. De kan tage i oplysninger og (normalt) returnere pålidelige resultater. Som et resultat kan de ende med at blive sorte kasser, hvilket betyder, at det, de gør, ikke altid er tydeligt. Mens programmøren sandsynligvis skabte det objekt og ved hvad det gør, er OOP-sprog simpelthen ikke så gennemsigtige som andre sprog.

ydeevne

objektorienterede sprog tager ofte et præstationshit. Programmer lavet på OOP-sprog er ofte større og kræver mere beregningsindsats for at køre end funktionelle sprog. Dette er dog ikke altid sandt eller vigtigt. C++ er et OOP-sprog, men det er et af de hurtigste sprog til rådighed. På samme note er hastighed ikke altid vigtig. Forskellen i hastighed bliver kun tydelig ved behandling af store eller komplekse beregninger eller i tilfælde, hvor ekstrem hastighed er påkrævet.

nu har du en fast forståelse af, hvad et objektorienteret sprog er, hvad det er godt for, og hvilke er de mest populære. Programmering på disse sprog kan være så behageligt som det er rentabelt, og din karriere i udvikling er kun få skridt væk.