Podstawy języka C++

Większość kursów C++, jakie widziałem w necie, zaczyna się od omówienia tego, co C++ odziedziczył w spadku po języku C. Uważam, że takie podejście jest szkodliwe. Przede wszystkim dlatego, że nie każdy, kto chce nauczyć się C++, znał wcześniej C lub jakiś inny podobny język programowania. Niektórzy zaczynają od łysego zera i wcale nie jest im łatwo, gdy autor kursu co chwilę fąfra coś o języku C, którego przecież nie znają! :-P

Poza tym kursy zaczynające od C uczą Cię tak naprawdę języka C i skazują na jego ograniczenia :-P Ucząc się z takiego kursu nabierzesz złych nawyków: będziesz próbować w C++ pisać programy w taki sam sposób, jak się to robiło w C. A przecież C++ to jednak nie jest C, lecz zupełnie nowy język z nowymi możliwościami, których w C nie było [te dwa plusy nie są tam dla picu ;-P]. Wiele rzeczy w C++ robi się inaczej, niektóre nawet dużo prościej niż w C. Warto więc skorzystać z tych udogodnień - do tego przecież został stworzony! :-)

Jest jeszcze jedna wada zaczynania nauki od C. Język ten był raczej "niskopoziomowy" i nawet najprostsze rzeczy wymagały od programisty sporej wiedzy o szczegółach działania komputera. C++ jest tak pomyślany, że na początku nauki nie musisz wcale wiedzieć zbyt wiele, by móc skorzystać z jego nowych możliwości i wcale nie musisz posiadać dużej wiedzy, by zrobić proste rzeczy. Doświadczenie możesz więc zdobywać stopniowo, w czasie nauki języka, a techniczne szczegóły poznajesz dopiero wtedy, gdy są Ci one potrzebne by zrobić coś bardziej nietypowego. Nie trzeba przecież być elektronikiem, by używać komputera ;-)

Dlatego właśnie w moim kursie postanowiłem przyjąć od początku, że C++ jest pierwszym językiem, którego się uczysz. Będę Cię zaznajamiał z nowoczesnym stylem pisania programów i od początku będziemy korzystać z nowych możliwości, jakie daje Biblioteka Standardowa C++. Dzięki temu będziesz w stanie od razu pisać użyteczne programy i na bieżąco widzieć efekty ich działania. Nauka będzie przebiegać stopniowo i przyjemnie ;-)

Jeśli należysz do tych, którzy wcześniej znali C, takie podejście może Cię trochę niepokoić. Możesz czuć się trochę niepewnie widząc, że odbiegam trochę od tego, co znasz dobrze z C. Możesz też mieć wątpliwości, czy nowe mechanizmy obiektowe dostępne w C++ są tak samo wydajne, jak te używane w C. Proszę jednak, powstrzymaj się narazie z oceną. W trakcie kursu zobaczysz, że jednak ten nowy styl ma swoje zalety i warto programować w taki sposób ;-) Przekonasz się, że dzięki temu programowanie staje się prostsze, mniej podatne na błędy, a wydajność jest przeważnie taka sama [będę niekiedy wyjaśniał, dlaczego tak jest ;-)].

Najbardziej wkurzały mnie zawsze w innych kursach teksty w stylu: "Narazie nie mogę Ci tego wyjaśnić, bo jesteś za głupi, dowiesz się jak wyrośniesz z pieluch [czyli za X lekcji] a narazie rób tak, jak Ci mówię, i nie zadawaj durnych pytań" :-P Dlatego w moim kursie będę się starał unikać takiego podejścia i wyjaśniać wszystko od razu na tyle, na ile się da, by działanie programu było dla Ciebie zrozumiałe. Bardziej szczegółowe wyjaśnienia czasami będę odkładał do czasu, aż okażą się konieczne by coś zrozumieć. Jednak będę tak robił tylko po to, by nie przeciążać Ci mózgownicy informacjami, które na początku nauki i tak nie będą Ci jeszcze potrzebne ;-)

No, to by było tyle ględzenia na wjazd ;-P Zapraszam do czytania i życzę przyjemnej nauki :-)


Subskrybcja

Buttony
Button1 Button2 Button3 Button4 Button5 Button6 Button7 Dodaj swój button