Advanced C++ - Plan Szkolenia
C++ to wieloplatformowy, obiektowy język programowania przeznaczony dla dużych systemów i aplikacji o ograniczonych zasobach, charakteryzujący się przejrzystą strukturą, możliwością ponownego wykorzystania kodu, elastycznością i wydajnością.
To prowadzone przez instruktora szkolenie na żywo (na miejscu lub zdalnie) jest przeznaczone dla programistów, którzy chcą korzystać z zaawansowanych C++ technik programowania do tworzenia złożonych, bezpiecznych i wydajnych systemów i aplikacji.
Po zakończeniu tego szkolenia uczestnicy będą w stanie
- Konfigurowanie środowiska programistycznego zawierającego wszystkie biblioteki, pakiety i struktury C++.
- Zrozumienie funkcji, komponentów i podstawowych elementów C++.
- Tworzenie złożonych aplikacji C++ przy użyciu zaawansowanych technik programowania.
- Dowiedz się, jak pisać czytelny, szybki i bezpieczny kod w C++.
- Poznanie typowych pułapek bezpieczeństwa w języku C++ i sposobów ich łagodzenia.
- Wdrożyć strategie testowania jakości kodu i kontroli bezpieczeństwa.
- Korzystać z narzędzi diagnostycznych i debugowania w rozwoju C++.
Format kursu
- Interaktywny wykład i dyskusja.
- Dużo ćwiczeń i praktyki.
- Praktyczne wdrożenie w środowisku live-lab.
Opcje dostosowywania kursu
- Aby zamówić niestandardowe szkolenie dla tego kursu, skontaktuj się z nami.
Plan Szkolenia
Wprowadzenie
- Co nowego w C++?
- Przegląd funkcji i elementów C++
- Zrozumienie programowania obiektowego
- Podstawy programowania C++
Pierwsze kroki
- Konfigurowanie środowiska programistycznego
- Instalowanie C++ IDE
- Standardowe biblioteki i komponenty
Zaawansowane Programming w C++
- Wyrażenia lambda w C++
- Standardowe kontenery i algorytmy
- Semantyka przenoszenia
- Reguły stylu kodowania C++
- Wskaźnik do implementacji (Plmpl)
- Przeciążanie operatorów
- Polimorfizm w C++
- Zmienne, tablice i instrukcje warunkowe
- Referencje i wskaźniki
- Obsługa wyjątków
- Inne nowoczesne funkcje i ich implementacja
Bezpieczeństwo Programming
- C++ funkcje zabezpieczeń i najlepsze praktyki
- Nowoczesne zarządzanie pamięcią
- Techniki obsługi ciągów znaków
- Praca z kontrolą konta użytkownika (UAC)
- Luki w zabezpieczeniach i opcje łagodzenia skutków
Strategie testowania dla C++
- Wybór środowiska testowego
- Analiza i metryki
- Pisanie testów jednostkowych
- Testy integracyjne i na poziomie systemu
- Testowanie starszego kodu
- Testowanie czarnoskrzynkowe
Debugowanie kodu
- Punkty przerwania warunkowego i funkcyjnego
- Debugowanie wielowątkowe
- Wydajność i narzędzia diagnostyczne
Podsumowanie i kolejne kroki
Wymagania
- Podstawowe C++ doświadczenie w programowaniu
Uczestnicy
- Deweloperzy
Szkolenia otwarte są realizowane w przypadku uzbierania się grupy szkoleniowej liczącej co najmniej 5 osób na dany termin.
Advanced C++ - Plan Szkolenia - Booking
Advanced C++ - Plan Szkolenia - Enquiry
Opinie uczestników (5)
Dzięki temu, że wszystko odbyło się online, mogliśmy zaoszczędzić sporo czasu. Bardzo docenione. Również fakt, że trener znał zarówno c#, jak i Cpp był ogromną pomocą, ponieważ mógł wyjaśnić wszystko poprzez wiedzę, którą już posiadaliśmy.
Gabor - Rheinmetall Electronics Hungary Kft
Szkolenie - Advanced C++
Przetłumaczone przez sztuczną inteligencję
Tempo było optymalne, nie za wolne, nie za szybkie. Poruszane tematy były bardzo nieformalne i interesujące. Myślę, że wszystko zrozumiałem. Rozmawialiśmy o tym, czym jest przypadek użycia i dlaczego jest przydatny. Przykłady były małe i zwięzłe, łatwe do zrozumienia. Mogliśmy zadawać pytania na każdym kroku, a odpowiedzi i wyjaśnienia były udzielane wyczerpująco i z dużą cierpliwością. Zadawano nam również pytania, aby upewnić się, że rozumiemy temat lub mamy jakieś pytania. To było zabawne i zabawne, chociaż bardzo nieformalne i myślę, że wiele się nauczyłem.
Gabor - Rheinmetall Electronics Hungary Kft
Szkolenie - Advanced C++
Przetłumaczone przez sztuczną inteligencję
Dużo ćwiczeń i pomocy. Przydatne było, aby trener mógł wykorzystać nasze indywidualne dokumenty projektowe, aby pomóc nam naprawić nasz problem i ukończyć ćwiczenia. {Mnóstwo szans na zadawanie pytań.
Matthew - Teledyne
Szkolenie - Advanced C++
Przetłumaczone przez sztuczną inteligencję
Podobało mi się, że mieliśmy ćwiczenia do wykonania, materiał był imponujący i dobrze strukturyzowany, a trener wytłumaczył bardzo dobrze wszystkie tematy
Diana Toldas - Accenture Industrial Software Solutions S.A.
Szkolenie - Advanced C++
Przetłumaczone przez sztuczną inteligencję
Ceniłem elastyczność i zróżnicowanie tematów, kombinacja szkoleń i ćwiczeń pozwoliła mi od razu zastosować to, co nauczyłem się. Zapewne również doceniłem projekty w ostatni dzień, które pozwoliły tudo junto. Correction: Ceniłem elastyczność i różnorodność tematów, kombinacja szkoleń i ćwiczeń pozwalała mi od razu zastosować to, co nauczyłem się. Zapewne również doceniłem projekty w ostatni dzień, które pozwoliły everything come together. Final Corrected Version: Ceniłem elastyczność i różnorodność tematów, kombinacja szkoleń i ćwiczeń pozwalała mi od razu zastosować to, co nauczyłem się. Zapewne również doceniłem projekty w ostatni dzień, które pozwoliły wszystko połączyć w całość.
Luca Ricagni - Rockwell Collins UK Limited
Szkolenie - Advanced C++
Przetłumaczone przez sztuczną inteligencję
Propozycje terminów
Szkolenia Powiązane
C++ for Modeling Quantitative Finance
49 godzinGłębokie szkolenie C++ obejmujące modelowanie metod ilościowych i wprowadzenie ogromnego projektu dla stażystów, aby mieli rzeczywiste praktyczne doświadczenie z C++ dla kwantów.
C/C++ Secure Coding
21 godzinTen trzydniowy kurs obejmuje podstawy zabezpieczania kodu C / C++ przed złośliwymi użytkownikami, którzy mogą wykorzystać wiele luk w kodzie z zarządzaniem pamięcią i obsługą danych wejściowych, kurs obejmuje zasady pisania bezpiecznego kodu.
C++ for Embedded Systems
21 godzinCzy C++ nadaje się do systemów wbudowanych, takich jak mikrokontrolery i systemy operacyjne czasu rzeczywistego?
Czy programowanie obiektowe powinno być stosowane w mikrokontrolerach?
Czy C++ jest zbyt daleko od sprzętu, aby było wydajne?
To prowadzone przez instruktora szkolenie na żywo odpowiada na te pytania i pokazuje poprzez dyskusję i praktykę, w jaki sposób C++ może być używany do tworzenia systemów wbudowanych z kodem, który jest dokładny, czytelny i wydajny. Uczestnicy wprowadzają teorię w praktykę, tworząc przykładową aplikację wbudowaną w C++.
Po zakończeniu tego szkolenia uczestnicy będą w stanie
- Zrozumieć zasady modelowania obiektowego, programowania oprogramowania wbudowanego i programowania w czasie rzeczywistym
- Tworzyć kod dla systemów wbudowanych, który jest mały, szybki i bezpieczny
- Unikać nadmiernego rozmiaru kodu wynikającego z szablonów, wyjątków i innych funkcji języka
- Zrozumieć problemy związane z użyciem C++ w systemach krytycznych dla bezpieczeństwa i w czasie rzeczywistym
- Debugować program C++ na urządzeniu docelowym
Uczestnicy
- Programiści
- Projektanci
Format kursu
- Połączenie wykładów, dyskusji, ćwiczeń i intensywnej praktyki
C++ 11 Programming
14 godzinTo jest dwudniowy kurs skierowany do programistów zainteresowanych zastosowaniem nowego standardu C++11 w swojej branży. Jest szczególnie przydatny dla twórców aplikacji finansowych, obejmując wszystkie nowe funkcje z przykładami kodowania do wykonania podczas zajęć laboratoryjnych.
Programowanie wielowątkowe w języku C++
28 godzinSzkolenie "Programowanie wielowątkowe w języku C++" skierowane jest do zaawansowanych i średnio zaawansowanych programistów pracujących z językiem C++. Kurs obejmuje teoretyczne i praktyczne zagadnienia związane z programowaniem wielowątkowym, skupiając się na wyzwaniach, problemach współbieżności, a także implementacji bibliotek standardowych i Boost. Uczestnicy zdobędą umiejętności z zakresu zarządzania wątkami, synchronizacji procesów, obsługi błędów, testowania i debugowania aplikacji wielowątkowych. Szkolenie obejmuje także zagadnienia dotyczące wzorców projektowych wielowątkowości, takich jak puli wątków, aktywnego obiektu czy bezpiecznej kolejki wielowątkowej.
C++17 – nowy standard języka
14 godzinKurs C++17 przedstawia nowości języka, takie jak structured bindings, instrukcje warunkowe z zmiennymi początkowymi, constexpr if, static inline components, agregacje, dziedziczenie oraz klasy std::string_view, std::optional, std::variant, std::any, std::byte. Omówione są także algorytmy współbieżne i zapowiedzi zmian w C++20.
C++, QT, ZeroMQ and Protocol Buffers
35 godzinTo prowadzone przez instruktora szkolenie na żywo w Polsce (online lub na miejscu) zapewnia wstępne omówienie języka C++, frameworka Qt GUI i różnych technologii komunikacyjnych, takich jak ZeroMQ i Protocol Buffers, które można wykorzystać do pisania aplikacji rozproszonych.
Pod koniec tego szkolenia uczestnicy będą mieli niezbędną wiedzę i praktykę do napisania i skompilowania aplikacji przy użyciu C++, Qt i gcc w systemie Linux Centos 6/7. Uczestnicy zintegrują również możliwości asynchronicznego przesyłania wiadomości przy użyciu Zero MQ i buforów protokołów.
Using C++ in Embedded Systems - Applying C++11/C++14
21 godzinTo szkolenie ma na celu wprowadzenie C++ jako powszechnego rozszerzenia języka C w kontekście obiektowego programowania systemów wbudowanych. Ponieważ C++ obejmuje C, to szkolenie poprowadzi nas w naturalny sposób od C do C++, pozwalając zajrzeć pod maskę implementacji C++. Jest to szczególnie cenne, gdy C++ jest stosowany w środowisku z ograniczonymi zasobami. Standard C++ przeszedł ostatnio gruntowną rewizję, znaną jako C++11, a nowa wersja, C++14, jest w przygotowaniu. Kurs ten obejmuje tematy wprowadzone w tych poprawkach, które są szczególnie przydatne, takie jak wydajne zarządzanie pamięcią, współbieżność wykorzystująca środowisko wielordzeniowe oraz programowanie blisko sprzętu.
CELE/KORZYŚCI
Głównym celem tej klasy jest umiejętność używania C++ w “poprawny sposób”.
- Wprowadzenie C++ jako obiektowego języka alternatywnego w kontekście systemu wbudowanego
- Pokazanie podobieństw – i różnic – w stosunku do języka C
- Zrozumienie różnych strategii zarządzania pamięcią – szczególnie semantyki przenoszenia wprowadzonej w C++11
- Zajrzenie pod maskę i zrozumienie, do czego prowadzą różne paradygmaty w C++ w kodzie maszynowym
- Wykorzystanie szablonów do osiągnięcia bezpiecznych typowo abstrakcji wyższego rzędu dla programowania blisko sprzętu – dostępu do pamięci mapowanej I/O oraz przerwań – szczególnie szablonów wariadycznych wprowadzonych w C++11
- Dostarczenie kilku przydatnych wzorców projektowych, szczególnie przydatnych w kontekście systemów wbudowanych
- Kilka ćwiczeń w celu przećwiczenia niektórych koncepcji
ODBIORCY/UCZESTNICY
Szkolenie skierowane jest do C++- programistów, którzy zamierzają rozpocząć korzystanie z C++ w kontekście systemu wbudowanego.
WCZEŚNIEJSZA WIEDZA
Kurs wymaga podstawowej wiedzy z zakresu C++ programowania, odpowiadającej naszym szkoleniom ”C++ – Level 1” i ”C++ Level 2 – Introducing C++11”.
ĆWICZENIA PRAKTYCZNE
Podczas szkolenia przećwiczysz prezentowane koncepcje w szeregu ćwiczeń. Wykorzystamy otwarte i darmowe zintegrowane środowisko programistyczne Eclipse
Functional Programming with C++
14 godzinSzkolenie na żywo prowadzone przez instruktora (na miejscu lub zdalnie) jest przeznaczone dla twórców stron internetowych, którzy chcą funkcjonować z C++
Po zakończeniu tego szkolenia uczestnicy będą w stanie
- Wykorzystywać rozwiązania programowania funkcyjnego w celu poprawy wydajności aplikacji internetowych.
- Unikać mutacji danych i efektów ubocznych dzięki programowaniu funkcyjnemu.
- Tworzyć aplikacje internetowe w stylu programowania funkcyjnego.
HMI Development for Automotive Infotainment Systems
14 godzinJest to specjalistyczny kurs rozwoju HMI przeznaczony dla profesjonalistów z branży motoryzacyjnej, którzy są zaangażowani w rozwój zaawansowanych samochodowych systemów informacyjno-rozrywkowych
Advanced C++ Software Design
35 godzinJest to zaawansowany C++ kurs szkoleniowy koncentrujący się na tworzeniu i projektowaniu oprogramowania zorientowanego obiektowo (OO) za pomocą C++ języka programowania;
Object Oriented Programming with C++
7 godzinW tym kursie uczestnicy poznają koncepcje C++ i umiejętności programowania.
Programowanie w języku C++
35 godzinKurs prezentuje kompleksowy język obiektowy C++ i jego wykorzystanie na prostych przykładach. Są to standardowe mechanizmy i biblioteki
Qt Programming
21 godzinTo prowadzone przez instruktora szkolenie na żywo w Polsce zapewnia dogłębne omówienie Qt i jego modułów.
Pod koniec tego szkolenia uczestnicy będą mieli niezbędną wiedzę i praktykę do opracowania własnej aplikacji C++ przy użyciu Qt.