LOADING

Nasze narzędzia - Historia C++

Prace zaczęły się w 1979 roku w Computing Science Research Center, jednostka ta należała do Bell Labs. W 1983 roku w opracowano pierwowzór języka C++. Język ten pierwotnie był dedykowany platwormie UNIX. Jego robocza nazwa brzmiała "C with classes" ("C z klasami"). Za jego twórcę uważa się dr. Bjarne'a Stroustrup'a, który potem wydał szereg publikacji na temat C++ oraz brał udział w tworzeniu jego standardu. Był on szefem zespołu programistów, zatem nie jest on jedynym twórcą. W październiku 1985 ukazała się pierwsza komercyjna wersja.

Główną zasadą podczas tworzenia tego języka było "to make writing good programs easier and more pleasant for the individual programmer". Język ten łączy w sobie cechy zaczerpnięte z kilku innych. Przejął składnie C, który był jego pierwowzorem. Spowodowane było to renomą tego ostatniego, który zyskał sobie miano języka solidnego, prostego, łączącego szybkość asemblera z "wolnością", jaką daje programiście język wysoki. Z języka Simula67 zaczerpnięto funkcje wirtualne oraz dziedziczenie (czyli de facto dużo więcej niż z C). Algol68 był "dawcą" przeciążonych operatorów. Ada i Clu również były inspiracją dla wprowadzenia szablonów.

Warto wspomnieć, iż idee związane z programowaniem obiektowym pojawiły się już 40 lat temu. C jest językiem pozwalającym na programowanie wieloparadygmatowe. Oznacza to, iż nie skupia się on na jednym paradygmacie (np. programowaniu zdarzeniowym), lecz pozwala programiście na wykorzystywanie wielu spośród nich. Podobną koncepcje zastosowano w Perl’u. C++ to pierwszy język, w którym pojawiło się określenie konstruktor i destruktor.

C++ jest językiem kompilowanym (co czyni go szybszym, np. wobec Javy). Początkowo nie było kompilatora mu dedykowanego, istniał jedynie translator na kod w C (Cfont), który był potem tradycyjnie kompilowany do pliku wykonywalnego. W 1989 roku powstał pierwszy kompilator tworzący plik wykonywalny z pominięciem fazy tłumaczenia do kodu w C. Jego twórcą był Michael Tiemann z Cygnus Suport. W chwili obecnej dostępnych jest wiele kompilatorów tego języka. Obecnie program napisany w C++ może być skompilowany na praktycznie każdym systemie operacyjnym (seria Windows, Unix i jego pochodne). W 1996 r. Lipman w swojej książce "Inside the C++ object model" opisał schemat działania kompilatora dla C++.

Obecnie programy napisane w C++ dorównują szybkością i małymi rozmiarami programom pisanym w C. Istnieje kilka wersji języka C++: Visual C++ Microsoftu, Borland C++, Turbo C++, CodeWarrior. Pierwsza wersja Visual C++ o numerze 1.0 ukazała się w 1993r. Dostępna była zarówno w wersji 16-bitowej, jak i 32-bitowej. W chwili obecnej dostepna jest wersja 8.0, powszechnie znana jako Visual C++ 2005. Borland C++ po raz pierwszy ujrzał światło dzienne w 1996r. Aktualnie dostępna jest wersja C++ Builder 2006.

Początkowo nie było standardu, który by opisywał ten język, spraw ta do dziś nie została dokończona. Sam Stroustrup powiedział: "There never was a C++ paper design; design, documentation and implementation went on simultaneously. (...) There never was a "C++ project" either, or a "C++ committee". Pierwszą specyfikacja języka była książka "The Annotated C++ Reference Manual" napisana przez Stroustrup'a i Ellis'a. W 1990 roku rozpoczęto prace nad nowym standardem. W 1998 r. wprowadzono ISO/IEC 14882-1998 "Information Technology - 2-1998 'Programing Languagues - C++". Standard ten w dużej części zerwał ze swoim poprzednikiem. Obecnie trwają prace nad nową wersją. Nikt nie jest właścicielem C++, natomiast kompilatory i środowiska programistyczne należą do ich twórców i mogą oni pobierać za ich użytkowanie opłaty.

Warto by jeszcze wspomnieć słowa samego twórcy języka, Pana Stroustrup’a zapytanego o to, co czuje na myśl, iż C++ jest tak szeroko stosowanym językiem: "I'm very pleased, but as I said, I wish they'd do themselves a favor by using it better".

LOADING
KTM Inżynieria z siedzibą i adresem w Złotoryi przy ulicy Rynek 5, wpisana do Rejestru Przedsiebiorców prowadzonego przez Sad Rejonowy dla Wrocławia-Fabrycznej, Żmigrodzka 241a Wydział Gospodarczy Krajowego Rejestru Sadowego pod numerem 0000231317; REGON 020044296; NIP 6941622984.