Jak to było: Nauka cpp część 1 (tło)
Mój pierwszy sensowny kontakt z cpp jak i z java miałem na studiach. Do tamtej pory “bawiłem” się dość ambitnie w php4 robiąc pewną grę (bijatykę turową) na podstawie świata Dragon Ball (swoją drogą bardzo fajna seria anime i mangi) oraz mniej ambitnie w delphi. Jednak dopiero poznanie tej największej wartości wśród programistów gier (czyli cpp) pozwoliło mi spojrzeć na tworzenie oprogramowania w inny sposób.
btw. byłem w szoku, gdy dowiedziałem się ile lat miał już język cpp.
Początki z cpp były dla mnie trudne ze względu na wskaźniki - nie miałem zacięcia żeby je zrozumieć i przez jakiś czas przy nich kulałem. Wszystko jednak można zrozumieć jeśli się tylko chce i poświeci trochę czasu na praktykę, nie tylko teorię.
W między czasie pojawiły się na studiach zajęcia z Javy. Początkowo byłem nastawiony na nie - po co mi dodatkowy język programowania, który jest wolniejszy od cpp, można w nim pisać w zasadzie jakieś tam aplety bo przecież do “normalnych” aplikacji mam już konkretne narzędzie w postaci cpp, a multi-platformowość - kto by tam się nad tym wtedy zastanawiał.. Ponieważ trzeba było się z tym zmierzyć, więc się zmierzyłem. Jak to czasem ironicznie bywa, okazało się, że Java ma mnóstwo zalet w stosunku do cpp i tak naprawdę stałem się “wojownikiem w imię Javy”.
To wszystko doprowadziło do tego, że moja znajomość cpp nie wykraczała poza mocne podstawy, ponieważ nie miałem jeszcze wtedy pojęcia co to tak naprawdę jest STL. Podsumowałbym to w ten sposób, że moja wiedza nie wychodziła za wiele poza ramy książki Symfonia C ++, chociaż była to usystematyzowana i konkretna wiedza.
Tak było do momentu, gdy zrozumiałem, że żeby stworzyć grę czy framework graficzny muszę mieć dużą wiedzę na temat cpp. Oczywiście zrozumiałem to za późno, ale lepiej później niż .. jeszcze później.
Mając solidną wiedzę na temat obiektowego programowania (OOP) w teorii i praktyce, czas był najwyższy na rozpoczęcie re-edukacji cpp..
(i tak kończy się tło mojej znajomości cpp jeszcze 6 miesiący wstecz).