Generationer av programmeringsspråk

Den aktuella versionen av sidan har ännu inte granskats av erfarna bidragsgivare och kan skilja sig väsentligt från versionen som granskades den 28 januari 2017; kontroller kräver 2 redigeringar .

Programmeringsspråk brukar delas in i fem generationer.

Första generationen

Den första generationen ( eng.  första generationens programmeringsspråk , 1GL) inkluderar maskinspråk - programmeringsspråk på nivån för instruktioner från processorn för en viss maskin. Ingen översättare användes för programmering , programkommandon matades in direkt i maskinkoden med strömbrytare på maskinens frontpanel. Sådana språk var bra för en detaljerad förståelse av funktionen hos en viss maskin, men svåra att lära sig och lösa tillämpade problem.

Begreppen "första generationen" och "andra generationen" introducerades samtidigt som termen "tredje generationen". Faktum är att dessa termer inte användes vid den tiden. Med tillkomsten av högnivåspråk började monteringsspråk att tillskrivas den första generationens språk.

Andra generationen

Andra generationens språk (2GL) skapades för att underlätta det hårda arbetet med programmering genom att flytta språkuttryck från maskinkoncept på låg nivå närmare hur en programmerare normalt tänker. Dessa språk dök upp på 1950-talet, särskilt Fortran och Algol . Det viktigaste problemet för utvecklare av andra generationens språk var uppgiften att övertyga kunderna om att koden som genererades av kompilatorn kördes tillräckligt bra för att motivera att överge programmering av assemblerspråk. Skepticism om möjligheten att skapa effektiva program med hjälp av automatiska kompilatorer var ganska vanligt, så utvecklarna av sådana system var tvungna att visa att de verkligen kunde generera kod nästan lika effektivt som manuell kodning, och för nästan alla källuppgifter.

Tredje generationen

Den tredje generationen (3GL) förstods ursprungligen betyda alla språk på en högre nivå än assemblerspråk. Det främsta utmärkande kännetecknet för tredje generationens språk var hårdvaruoberoende , det vill säga uttrycket av en algoritm i en form som inte beror på de specifika egenskaperna hos den maskin som den kommer att köras på . Kod skriven på ett tredje generationens språk översätts antingen direkt till maskininstruktioner före exekvering, eller till assemblerspråkskod och sätts sedan ihop. Vid kompilering, till skillnad från tidigare generationer, finns det inte längre en en-till-en-överensstämmelse mellan programinstruktioner och genererad kod.

Tolkning av program har blivit mycket använd - i det här fallet konverteras inte programinstruktioner till maskinkod, utan exekveras direkt efter varandra. Hårdvaruoberoende uppnås genom att använda en tolk kompilerad för en specifik hårdvaruplattform.

Fjärde generationen

Termen fjärde generationens programmeringsspråk (4GL) förstås bättre som fjärde generationens utvecklingsmiljöer . De syftar på tidsperioden från 1970-talet till början av 1990-talet.

Språken i denna generation är avsedda för genomförandet av stora projekt, ökar deras tillförlitlighet och skapelsehastighet, är fokuserade på specialiserade tillämpningsområden och använder inte universella utan objektorienterade språk som fungerar med specifika koncept av ett smalt ämnesområde. Dessa språk bäddar in kraftfulla operatorer som tillåter en rad att beskriva sådan funktionalitet, vilket skulle kräva tusentals rader med källkod på språken för yngre generationer [1] .

Femte generationen

Födelsen av femte generationens språk inträffade i mitten av 1990-talet. Dessa inkluderar även system för att automatiskt skapa applikationsprogram med hjälp av visuella utvecklingsverktyg, utan programmeringskunskap . Huvudidén var möjligheten till automatisk generering av den resulterande texten i universella programmeringsspråk (som måste kompileras). Instruktioner läggs in i datorn i den mest visuella formen med metoder som är mest bekväma för en person som inte är bekant med programmering [1] .

Se även

Anteckningar

  1. ↑ 1 2 Femte generationen - programmeringsspråk eller applikationssystem? . www.pcweek.ru Hämtad 10 december 2016. Arkiverad från originalet 20 december 2016.

Länkar