C++

Aktualizacja: 14.01.2021

Zobacz polecane:

Kursy Książki

Zastosowanie

C++ to język ogólnego zastosowania. Programy w C++ mogą być napisane tak, aby były wieloplatformowe bez żadnych modyfikacji, ale tylko, gdy trzymamy się odpowiednich zasad. Niektóre właściwości/biblioteki są dla specyficznych systemów.

C++ jest najczęściej stosowany w systemach wbudowanych oraz w game devie. W C++ napisane zostały systemy operacyjne (lub ich części) takie jak Apple OS X,IBM OS/400, Windows NT, XP, Vista, 7. Jednak zastosowanie C++ jest dużo szersze, głównie tam, gdzie stawia się na wydajność oprogramowania, od aplikacji desktopowych (m.in. produkty Adobe np. Photoshop, Acrobat czy pakiety biurowe Office) przez serwery (m.in. e-commerce np. Amazon, Ebay; wyszukiwarki np. Chrome; baz danych np. MongoDB) po silniki gier AAA lub ich części (np. CryEngine, Unity, Unreal Engine).

Ogólnie rzecz biorąc, C++ znajduje zastosowanie tam, gdzie liczy się wydajność oraz niskie zużycie zasobów.

C++ używany jest w największych światowych korporacjach m.in.: Adobe, Facebook, Amazon, Ericsson, HP, IBM, Intel.

Top 10 projektów na Github wykorzystujących C++

Github to system kontroli wersji. Możesz znaleźć tam projekty open source w każdej technologii. Zobacz jakiego typu projekty wykorzystują język C++ oraz jak wygląda C++ od strony kodu. Zwróć uwagę na pliki z rozszerzeniem .cc lub .cpp.

1# tensorflow 155,980
2# electron 91,874
3# terminal 74,063
4# swift 56,042
5# PowerToys 54,988
6# opencv 54,486
7# bitcoin 53,990
8# pytorch 48,370
9# protobuf 48,019
10# tesseract 40,019

Poziom skomplikowania

C++ to język dużo bardziej złożony niż inne języki programowania. Jego semantyka może się wydawać nieco mniej przyjazna dla początkujących. Trzeba też zrozumieć dużo więcej aspektów niż w językach o wyższym poziomie abstrakcji. Należy do nich m.in. zarządzanie pamięcią.

C++ zakłada statyczną kontrolę typów, ale pozwala także na ich automatyczną dedukcję.

Dzięki tym właściwościom C++ daję większą kontrolę nad programem, jest bardziej jednoznaczny i umożliwia dostęp do bardziej niskopoziomowych funkcji, co jest szczególnie ważne w dziedzinach, w których znajduje zastosowanie.

Często mówi się o wskaźnikach, że są trudne dla początkujących, jednak nie powinieneś się ich bać. To nie jest rocket science. W C++ też istnieją inteligentne wskaźniki (są zalecaną praktyką), które same usuwają się wraz z końcem swojego zasięgu, zapobiegając wyciekom pamięci. Surowe wskaźniki są używane tylko w specyficznych sytuacjach.

O C++ krąży wiele mitów i twierdzeń, które są już zaszłością, a były prawdziwe przed C++11.

Można zauważyć, że C++ jest często polecanym językiem na początek, na zasadzie, że jak poznasz wszystkie koncepty programowania w C++ to już żaden inny język nie sprawi Ci problemu. Jednak jest to język bardzo złożony i dla nowicjuszy może być przytłaczający. Zaczynając z C++ bardzo łatwo jest się sparzyć, dlatego jeśli nie masz konkretnego powodu, dla którego chcesz uczyć się języka C++, warto zacząć z językami bardziej przyjaznymi dla początkujących jak np. Python. C++ to nieco trudniejsza i dłuższa droga na początek.

Statystyki

Dane aktualne na dzień: 23.05.2021

Według TIOBE index, język C++ jest na 4 pozycji pod względem popularności utrzymując pozycję sprzed roku.
Z kolei według rankingu Spectrum jest na 2 pozycji, tak samo jak w ubiegłym roku roku.

Na Stack Overflow jest 6 najczęściej tagowanym językiem z 725,471 zapytaniami.

Na Github zajmuje 4 pozycję z liczbą 492,598 projektów, z których 1,458 ma więcej niż 1000 gwiazdek.

Jeśli chodzi o organizowane spotkania to według Meetup.com jest to 12 co do wielkości społeczność z liczbą 224 grup, w skład których wchodzi 117,812 członków na całym świecie. W Polsce mamy odpowiednio 13 grup, w skład których wchodzi 7,100 członków.

Meetupy C++ są kategoryzowane razem z językiem C. Mimo to widać, że w porównaniu do innych języków, grup organizujących spotkania dla społeczności C/C++ jest bardzo mało.

Przyszłość języka

Lata świetności C++ z 2003 roku już dawno minęły i można powiedzieć, że C++ staję się coraz bardziej niszowym językiem. Jednak wraz z rozwojem technologii VR (Virtual Reality), w której C++ jest przodującym językiem, znów zyskuje na popularności. C++ jest co jakiś czas nadal ulepszany, mimo że powstał w 1985 roku. C++ nie należy do najpopularniejszych, ale tam, gdzie liczy się wydajność, jest często wybierany i nie zapowiada się, żeby się to zmieniło w najbliższym czasie. Ostatnia jego wersja C17 wyszła w czerwcu 2018.

Najlepsze kursy video do nauki C++

na platformie Udemy:

Język kursu - angielski Okładka kursu

Unreal Engine C++ Developer: Learn C++ and Make Video Games

Created in collaboration with Epic Games. Learn C++ from basics while making your first 4 video games in Unreal

Czas trwania: 31.5 total hours 268007 zapisanych uczestników
All Levels Ostatnia aktualizacja: 2021-05-18
4.58 / 5
Liczba ocen: 51733

Język kursu - angielski Okładka kursu

Beginning C++ Programming - From Beginner to Beyond

Obtain Modern C++ Object-Oriented Programming (OOP) and STL skills needed for game, system, and application development.

Czas trwania: 41.5 total hours 139460 zapisanych uczestników
All Levels Ostatnia aktualizacja: 2021-05-14
4.63 / 5
Liczba ocen: 36926

Język kursu - angielski Okładka kursu

Learn C++ Programming -Beginner to Advance- Deep Dive in C++

Classroom and Hands-on sessions- Features of C++ 11 , Exception Handling and STL - for Both Academics and Industry

Czas trwania: 30.5 total hours 30075 zapisanych uczestników
All Levels Ostatnia aktualizacja: 2021-03-20
4.64 / 5
Liczba ocen: 9596

Język kursu - angielski Okładka kursu

Mastering Data Structures & Algorithms using C and C++

Learn, Analyse and Implement Data Structure using C and C++. Learn Recursion and Sorting.

Czas trwania: 58.5 total hours 62099 zapisanych uczestników
All Levels Ostatnia aktualizacja: 2021-02-06
4.68 / 5
Liczba ocen: 17580

Język kursu - polski Okładka kursu

C++ od Podstaw do Eksperta

Oszczędź swój czas i naucz się szybko składni języka C++ z kursem, który został stworzony specjalnie dla początkujących.

Czas trwania: 21.5 total hours 8501 zapisanych uczestników
All Levels Ostatnia aktualizacja: 2021-05-01
4.52 / 5
Liczba ocen: 1411

Język kursu - polski Okładka kursu

150+ Ćwiczeń - Programowanie obiektowe w języku C++ - OOP

Podnieś poziom swoich umiejętności o programowanie obiektowe w języku C++ i rozwiąż ponad 150 ćwiczeń na różnym poziomie

Czas trwania: 1 total hour 15 zapisanych uczestników
Intermediate Level Ostatnia aktualizacja: 2021-05-18
5.0 / 5
Liczba ocen: 4

Język kursu - polski Okładka kursu

Programowanie w języku C++ - od A do Z

Naucz się jednego z najpopularniejszych języków programowania i zacznij pisać praktyczne programy w języku C++

Czas trwania: 9 total hours 46 zapisanych uczestników
Beginner Level Ostatnia aktualizacja: 2021-04-27
4.92 / 5
Liczba ocen: 12

Język kursu - polski Okładka kursu

Programowanie C++ od podstaw

Na podstawie projektów konsolowych w Dev C++ i Visual Studio

Czas trwania: 12 total hours 20 zapisanych uczestników
Beginner Level Ostatnia aktualizacja: 2021-04-12
5.0 / 5
Liczba ocen: 4

Inne kursy video na UdemyZobacz inne kursy video na Udemy

Najlepsze książki do nauki C++

od wydawnictwa Helion:

Najnowszy następca popularnej Symfonii C++:

Najlepsza książka o wzorcach projektowych z przykładami w C++:

Zobacz inne książki w kategorii C++