Du ställer en bra fråga som berör historien om programmeringsspråk och utvecklingen av objektorienterad programmering (OOP). Här är en uppdelning:
Generationer av programmeringsspråk:
* 1:a generationen (maskinspråk): Dessa är de mest primitiva språken som direkt interagerar med datorns hårdvara. De är inte objektorienterade.
* 2:a generationen (monteringsspråk): Dessa språk använder mnemonics för att representera maskininstruktioner, vilket gör dem lite mer mänskliga läsbara. De är inte heller objektorienterade.
* 3:e generationen (språk på hög nivå): Det är här vi börjar se grunden för OOP. Språk som Fortran, Cobol och Algol var procedur, med fokus på instruktioner och dataflöde. Vissa koncept som datastrukturer (t.ex. matriser, poster) lägger emellertid grunden för objekt.
* 4:e generationen (mycket hög nivå språk): Denna generation introducerade mer abstrakta begrepp, ofta med fokus på specifika domäner som databashantering (SQL) eller rapportgenerering. Även om de kan erbjuda några objektliknande funktioner, anses de vanligtvis inte helt objektorienterade.
Objektorienterad programmering (OOP):
OOP framträdde som ett paradigm på 1970- och 80 -talet. Det fokuserar på:
* Objekt: Data och metoder (funktioner) som fungerar på dessa data samlas ihop.
* klasser: Ritningar för att skapa objekt.
* inkapsling: Dölja interna detaljer och exponera endast nödvändiga gränssnitt.
* arv: Skapa nya klasser baserade på befintliga, marknadsföra återanvändning av kod.
* polymorfism: Objektens förmåga att ta på sig olika former, vilket möjliggör flexibilitet.
Svaret:
Tekniskt sett anses inte generationer 1-4 som objektorienterade språk . De föregår utvecklingen av OOP som ett stort programmeringsparadigm. Några av funktionerna i tredje generationens språk (som strukturerad programmering) lägger emellertid grunden för OOP -koncept.
Viktig anmärkning:
Medan traditionella 3:e och fjärde generationens språk inte i sig är OOP, har några av dem utvidgats för att stödja objektorienterade funktioner. Till exempel är C ++ (byggd på C) och Java (inspirerad av C ++) kraftfulla objektorienterade språk.
Sammanfattningsvis, medan de tidiga generationerna av programmeringsspråk inte hade den fulla sviten med funktioner som vi associerar med OOP, bidrog de till utvecklingen av programmeringskoncept som så småningom ledde till uppkomsten av objektorienterad programmering.