Referaat

C++ Programmeerimiskeele ajalugu


Sissejuhatus

C++ on üks populaarsemaid ja mõjukamaid programmeerimiskeeli maailmas. Selle loomine algas praktilise vajadusena pakkuda madala taseme riistvarajuhtimise võimalusi koos kõrgtasemel abstraktsioonidega. Tänapäeval kasutatakse C++-i laialdaselt süsteemitarkvara, mänguarenduse, manussüsteemide ja suure jõudlusega rakenduste arendamiseks.


Loomise ajalugu

Eellugu

C++ loomise inspiratsiooniallikaks oli C-keel, mille töötas välja Dennis Ritchie 1970. aastatel Bell Labsis. C keel oli tuntud oma efektiivsuse ja riistvaraläheduse poolest, kuid sellel puudusid objektorienteeritud programmeerimise (OOP) võimalused. Samal ajal hakkas objektorienteeritud paradigm levima tänu Smalltalki ja Simula 67 keelte populaarsusele.

  1. aastal asus Bjarne Stroustrup Bell Labsis arendama keelt, mis kombineeriks C-keele jõudluse ja Simula 67 objektorienteeritud omadused. Tema eesmärgiks oli luua keel, mis sobiks keerukate ja suuremahuliste süsteemide arendamiseks.

C++ algus

  1. aastal sai keel ametlikult nimeks “C++” – viidates C-keele “inkrement” versioonile (“++” on C-s inkrementoperaator). Esimene ametlik C++ versioon ilmus 1985. aastal koos Bjarne Stroustrupi raamatu “The C++ Programming Language” avaldamisega.

Esimese C++ versiooni põhifunktsioonid:

  • Klassid ja objektid
  • Pärandamine (inheritance)
  • Polümorfism (liidesefunktsioonid)
  • Funktsioonide ülekoormamine

Näide varasest C++ koodist:

#include <iostream>

class HelloWorld {
public:
    void greet() {
        std::cout << "Hello, C++ World!" << std::endl;
    }
};

int main() {
    HelloWorld hw;
    hw.greet();
    return 0;
}

Olulised arenguetapid

1980. aastad: Varajane levik

C++ muutus kiiresti populaarseks, kuna see pakkus võimalust kasutada nii protseduurilist kui ka objektorienteeritud programmeerimist. Keel oli eriti atraktiivne süsteemiarendajatele, kes vajasid võimsat ja paindlikku tööriista.

1990. aastad: Standardiseerimine

  1. aastal avaldati esimene suurem C++ spetsifikatsioon, “The Annotated C++ Reference Manual”. Rahvusvaheline standardimisorganisatsioon (ISO) alustas keele standardiseerimist, mis viis 1998. aastal esimese ametliku C++ standardi, C++98, avaldamiseni.

Olulised omadused C++98-s:

  • Standardne mallikogu (STL)
  • Mallid (templates)
  • Exception handling
  • Namespace’id

2000. aastad: Täiendused ja moderniseerimine

  1. aastal avaldati C++03, mis oli C++98 täpsustus. 2011. aastal ilmus aga märgiline C++11, mis tõi kaasa suuri uuendusi:
  • Lambda-väljendid
  • Automaatne tüübimääramine (auto)
  • Nutikad osutid (smart pointers)
  • Liikuvad semantika (move semantics)
  • Mitmekeermelisuse toe täiustused

C++11 algatas modernse C++ ajastu, muutes keele arendamist kiiremaks, turvalisemaks ja tõhusamaks.

2020. aastad: Kaasaegne C++

C++20, mis avaldati 2020. aastal, tõi veelgi rohkem täiustusi, sealhulgas kontseptsioonid (concepts), korutined (coroutines) ja täiustatud moodulisüsteemid. Need uuendused tegid C++-st veelgi võimsama keele suurte ja keeruliste süsteemide jaoks.


Kokkuvõte

C++ alustas kui väike projekt, mille eesmärgiks oli täiustada C-keelt, kuid sellest kasvas välja üks enim kasutatud programmeerimiskeeli maailmas. Selle võime ühendada madala taseme efektiivsus kõrgtasemel abstraktsioonidega on teinud C++-st olulise tööriista tarkvaratööstuses. Tänapäeval jätkub keele arendamine aktiivselt, et vastata uute tehnoloogiate ja rakenduste nõudmistele.