fbpx

Dlaczego C++? Jakich języków programowania warto się uczyć?

Czy w 2021 roku warto zainteresować się programowaniem w C++? Łukasz opowiada o faktach i mitach dotyczących C++ oraz o innych językach programowania, które można rozważyć.

Osoby wracające do programowania prawdopodobnie w przeszłości spotkały się z C++ w szkole średniej lub na studiach. C++ nadal jest jednym z głównych języków dostępnych na uczelniach wyższych i uczony jest jako “wstęp” do programowania. To oczywiście przeciętny pomysł, ale z innych powodów niż myślisz.

Mity dotyczące C++ i jego trudności bardziej związane są ze sposobem nauczania go na uczelniach niż z samym językiem. Uczelniane / szkolne programy zakładają mylenie C++ z C, uczenie przestarzałych standardów i metaforyczne “programowanie na kartce papieru”. Nic dziwnego, że później “wskaźniki” i “szablony” spędzają sen z powiek studentom (zwłaszcza, jeśli nigdy nie słyszeli o inteligentnych wskaźnikach).

Tylko jeśli studenci przeskoczyliby na naukę nowoczesnych standardów, szybko okazałoby się, że C++ nie odstaje trudnością od innych języków. Czy jest trudniejszy od Javy? Na pewno tak. Nie jest jednak tak trudny, jak się wydaje.

Plusy i minusy C++

C++ jest kompatybilny wstecz. Należy to traktować jako jego wadę i zaletę w jednym. Z jednej strony można pisać kod po staremu, co daje ogromne możliwości, z drugiej strony dobre praktyki ze starych standardów najczęściej są złymi praktykami w nowych standardach.

Ale główny minus C++ to fakt, że musisz przygotować się na dużo, dużo pracy, bo czeka Cię masa wiedzy do ogarnięcia. W C++ jest o wiele więcej zagadnień do nauczenia niż w innych językach.

Z drugiej strony C++ używany jest w dwóch rozwojowych branżach: gamedevie i embedded. W przypadku tej drugiej na pewno ktoś powie, że więcej używa się języka C a w tej pierwszej C#, ale generalnie przesiadka z C++ na dwa powyższe nie powinna być problemem. Co więcej, przesiadka z C++ na każdy inny, dowolny język programowania nie powinna być trudna.

Kolejny plus – mało który język nauczy dbania o zasoby (takie jak pamięć) i wydajność tak jak C++. Używa się go głównie tam, gdzie wydajność jest kluczowa i duży nacisk kładzie się na złożoność obliczeniową i optymalizacje. Inne popularne języki, takie jak Java czy Python, nie umożliwiają zejścia na tzw. niższy poziom. Jednak optymalizowanie kodu wcale nie musi oznaczać schodzenia na te niższe poziomy, które C++ nam zapewnia.

  • Minusy: kompleksowość oraz przestarzałe praktyki dostępne w internecie i na studiach.
  • Plusy: możliwość pracy w popularnych branżach, łatwość nauki innego języka programowania.

Jakich języków programowania warto się uczyć

Jeśli nie C++, to co? Dla początkująch dobrą propozycją może być popularny Python. Osoby chcące pracować z backendem mogą też śmiało próbować Javy. Bez dwóch zdań nauka obydwu powyższych będzie łatwiejsza. Web development to JavaScript (tylko pamiętajcie, że HTML to nie język programowania!). Python i zbliżona do C++ składniowo Java na pewno będą łatwiejsze na start, choćby z tego powodu, że nie musimy zajmować się zarządzaniem zasobami.

ALE… C++ daje ogrom możliwości – programistycznych oraz w szukaniu pracy. Co przekłada się bezpośrednio na zarobki.

Decydując się na samodzielną naukę C++ ciężko będzie zweryfikować, czy wiedza jest aktualna i czy obecnie kod pisze się w dany sposób. Próbowanie nauki C++ od zera jest ryzykowne. Minimum, poza szukaniem najnowszych standardów, będzie znalezienie mentora lub chociaż grup fejsbukowych, które poradzą w którym kierunku pójść.

Który język wybierzesz?

Decyzja oczywiście należy do Ciebie, ale na zachętę przytoczę popularne powiedzonko w programistycznym kręgu: jeżeli chcesz sobie strzelić w stopę i jesteś pythonowcem, to Python Ci na to nie pozwoli. Natomiast jeśli używasz C++, to zapyta on tylko, jaki kaliber sobie życzysz 🙂

Dodaj komentarz

Witryna wykorzystuje Akismet, aby ograniczyć spam. Dowiedz się więcej jak przetwarzane są dane komentarzy.

AKTUALNOŚCI

Jak wrócić do programowania?

Dla osób, które miały styczność z C++ na studiach czy w liceum, powrót do programowania z C++ wydaje się być naturalny. To niekoniecznie dobre rozwiązanie. Dlaczego?

Czytaj »

Podsumowanie roku 2020

Jak co roku w Coders School podsumowanie poprzedniego roku robimy miesiąc później niż inni . Dzięki temu czymś się wyróżniamy. Ale tym razem oprócz suchego

Czytaj »
Zasady programowania

Zasady programistyczne w skrócie

Zasady programistyczne określają nam, w jaki sposób pisać efektywny kod. Inni programiści w łatwiejszy sposób mogą odczytać taki kod. Prościej jest go również dalej rozwijać.

Czytaj »
konwencje w skrócie

Konwencje w skrócie

Jeśli pracujesz w jakimkolwiek projekcie, to powinieneś dostosować się do określonej i panującej w nim konwencji. Jest ona zbiorem zasad, które określają, jak pisać nasz

Czytaj »
Scrum w skrócie

Scrum w skrócie

Pracując w firmie oprócz samych umiejętności programowania, potrzebne są również umiejętności pracy zespołowej. Znajomość Scruma czy różnych technik programowania w grupach może się przydać w

Czytaj »
debugerry w skrócie

Narzędzia programisty: Debuggery w skrócie

Debuggery – narzędzia programisty Debuggery są narzędziem potrzebnym każdemu programiście. Pozwalają one zaoszczędzić godziny szukania błędu w naszym kodzie. Co więcej, dają również możliwość kontrolowania

Czytaj »