Kurs programowania w języku C++

C++ to bardzo popularny, wszechstronny i łatwy do opanowania język, dlatego jest doskonałym wyborem dla każdego, kto chce rozpocząć swoją przygodę z programowaniem. Nawet podstawowa znajomość C++ pozwoli ci znacznie szybciej opanować inne języki programowania np. JAVA czy C#.

Kurs programowania C++ zapewni ci bardzo solidne podstawy niezbędne każdemu programiście C++. Zdobędziesz wiedzę, którą będziesz mógł potem rozwijać w dowolnym kierunku: programowanie gier, aplikacje mobilne, bazy danych, aplikacje webowe itp.

Forma zajęć:

Zajęcia prowadzone są przez jednego instruktora, każdy z uczestników pracuje przy jednym laptopie. Kurs trwa 32 godziny lekcyjne.

Uczestnicy kursu otrzymują:

  • Imienne certyfikaty sygnowane przez Narodowy Instytut Kształcenia w języku polskim oraz angielskim.
  • Zaświadczenie ukończenia kursu (na podstawie §18 Rozporządzenia Ministra Edukacji Narodowej z dnia 11 stycznia 2012 r. w sprawie kształcenia ustawicznego w formach pozaszkolnych (Dz. U. z 2012 r. poz. 186)).

Narodowy Instytut Kształcenia został wpisany do rejestru Niepublicznych Placówek Kształcenia Ustawicznego prowadzonego przez Powiat Sanocki pod numerem 23. Organem prowadzącym NInK jest Podkarpacka Fundacja Rozwoju Kultury. Wszelkie dochody z tytułu prowadzenia szkoleń i kursów trafiają na wydzielone konto PFRK i są przekazywane na rozwój sektora szkoleniowego co jest wpisane w główne cele statutowe PFRK i NInK.

Pobierz ofertę

Napisz do nas: instytut@nink.pl
Zadzwoń: +48 13 464 03 44 

 

Program kursu programowania C++:

Kurs wstępny

System kontroli wersji. Wykorzystanie Git'a w pracy zespołowej.

C++

1. Historia języka, struktura programu

    • Słowa kluczowe, nazwy, komentarze, blok kodu, widoczność i zasłanianie nazw

2. Instrukcje preprocesora, kompilator, flagi kompilatora, kompilacja warunkowa

    • dołączanie plików, definiowanie makr, warunkowe włączanie fragmentów kodu, optymalizacja kodu wynikowego

3. Rodzaje zmiennych, struktury danych

    • zmienne ze znakiem i bez, typu całkowitego i zmiennoprzecinkowego, const, volatile, operacje na typach wbudowanych, operatory, proste struktury, typedef

4. Instrukcje warunkowe

    • if, while, do-while, for, switch-case, goto, ?:, break/continue

5. CLI, Parametry, funkcje i przeciążanie funkcji

    • przekazywanie parametrów do programu, przekierowanie wyjścia, definiowanie funkcji, przekazywanie parametrów

6. Tablice, łańcuchy znaków

    • Operacje na stringach, tablice jedno i wielowymiarowe

7. Zarządzanie pamięcią, wskaźniki, alokacja i dealokacja pamięci

    • Dynamiczne alokowanie pamięci, jak bronić się przed wyciekami pamięci, operacje na wskaźnikach, najczęstsze problemy, nullptr

8. Operacje na plikach i strumieniach danych

    • Wczytywanie plików, operowanie na strumieniach, zapis do pliku, tryb binarny i tekstowy

9. Biblioteka standardowa STL

    • Zapoznanie z biblioteką STL, wykorzystanie dostępnych algorytmów i struktur, rozszerzanie możliwości biblioteki STL

10. Algorytmy, złożoność obliczeniowa, wydajność

    • Zapoznanie z pojęciem złożoności obliczeniowej,

11. Złożone struktury danych, drzewa, hash-mapy, kolekcje

    • Praktyczne przypadki wykorzystania złożonych struktur danych, ich zalety oraz wady, porównanie szybkości działania, prosta implementacja

12. Przestrzenie nazw, klasy, typy wyliczeniowe

    • Zapoznanie z hierarchią nazw, metody enkapsulacji, scenariusze wykorzystania

13. Programowanie obiektowe, dziedziczenie, funkcje i klasy zaprzyjaźnione

    • Wprowadzenie do programowania obiektowego, dziedziczenie, enkapsulacja, kwantyfikatory dostępu

14. Przeładowywanie operatorów, polimorfizm

    • Rozszerzanie możliwości klas, funkcje wirtualne, klasy abstrakcyjne

15. Tworzenie API, Integracja z bibliotekami zewnętrznymi

    • Budowanie projektu, pliki Makefile, wykorzystanie bibliotek zewnętrznych, tworzenie własnych bibliotek

16. Funkcje Lambda

    • Funkcje anonimowe, wykorzystanie funkcji anonimowych, sposoby przechwytywania danych

17. Smart pointery, iteratory, programowanie funkcyjne

    • Shared/Unique/Weak pointer, iteratory ich klasy, ograniczenia i możliwości, funktory

18. Procesy, wielowątkowość, Mutexy

    • Uruchamianie kilku procesów, wykorzystanie kilku procesorów, równoległe wątki, jednoczesny dostęp do danych, race condition, undefined behavior, bezpieczny dostęp do danych, synchronizacja.

19. Template, auto

    • Programowanie generyczne, dedukcja typów, metody dedukcji, automatyczna dedukcja typów zwracanych i przechwytywanych

20. Testy kodu

    • Gwarancja spójności kodu, kontrola jakości kodu, testy jednostkowe, testy integracyjne

21. Zasady dobrego programisty

    • Zasada DRY, właściwe używanie wskaźników, obiekty tymczasowe, proces kompilacji, narzędzia do wspomagania pracy, analizatory statyczne
Miejsce
Termin
Sanok

ul. 3 Maja 15/3

38-500 Sanok

Termin do ustalenia,
po zebraniu min. 5 osób

Rzeszów

Rzeszów

Termin do ustalenia,
po zebraniu min. 5 osób

Kraków

Kraków

Termin do ustalenia,
po zebraniu min. 5 osób

Sanok

ul 3 Maja 15/3

38-500 Sanok

Zajęcia dla młodzieży

Miejsca

Sanok

ul. 3 Maja 15/3

38-500 Sanok

Rzeszów

Rzeszów

Kraków

Kraków

Sanok

ul 3 Maja 15/3

38-500 Sanok

Szkoleniowcy