Curs „C++ Developer” - curs 126.000 rub. de la Yandex Workshop, instruire 9 luni, data: 11 decembrie 2023.
Miscelaneu / / November 28, 2023
Vei învăța doar ceea ce va fi cu siguranță util în munca ta.
C++ este un limbaj complex pentru sisteme complexe: mașini autonome și robotică, browsere web, microcontrolere, servere și jocuri video. Cursul nu este ușor, dar chiar și începătorii îl pot stăpâni dacă dedică suficient timp și efort învățării.
Inginer senior de dezvoltare electronică, dezvoltator embedded aspirant și mentor la Atelier.
Program de curs „C++ Developer”
Poți alege între un program de bază și unul avansat: stăpânește doar elementele esențiale necesare unui dezvoltator junior sau dobândești mai multe abilități, extinde-ți CV-ul și crește rapid la nivelul mediu. Actualizăm în mod regulat materialele - înveți doar ceea ce vei avea cu siguranță nevoie în practică.
Modul opțional gratuit10 ore Concepte de bază de programare
Veți învăța elementele de bază ale programării și cum să scrieți programe simple în C++
Introducere în C++
Variabile și intrare
Condiționale, pentru buclă
Funcții
Acest modul este opțional, dar vă va ajuta să vă familiarizați cu formatul nostru de formare.
1 modul 20 ore
Introducere în C++
Te vei familiariza cu capacitățile de bază ale limbajului C++ și vei scrie peste 25 de programe în el.
Sprint 0. Bazele C++.
• Numere și linii. Operațiuni asupra lor. Intrare și ieșire
• Condiții și cicluri
• V înseamnă vector
• Funcții
• Set container
• Copiere profundă, referințe și constanță
• Container pentru hartă
• Git
Căutați proiectul serverului
Creați fundația propriului motor de căutare.
2 module120 ore
Concepte de bază ale limbajului C++ și ale bibliotecii sale standard
Veți stăpâni concepte importante pentru dezvoltarea C++ cu drepturi depline:
• iteratoare - pentru a lucra cu toți algoritmii standard,
• constructori - pentru a facilita crearea de obiecte,
• şabloane de funcţii - pentru a scrie cod universal.
Și, de asemenea, învățați cum să gestionați programe complexe: împărțiți codul în mai multe fișiere și testați-l.
Sprint 1. Studiem algoritmi de bază, structuri și clase de date. Ne aruncăm în detalii și evităm duplicarea codului.
• Algoritmi simpli
• Structuri și clase
• Funcții lambda
Sprint 2. Să aruncăm o privire mai atentă la tipurile întregi C++, precum și la tupluri și șabloane de funcție. Să aflăm cât de dedicat este C++ pentru economisirea resurselor și să învățăm cum să evităm greșelile asociate cu acesta.
• Lucrul cu mediul Visual Studio Code
• Tipuri numerice
• Perechi și tupluri
• Șabloane de funcție
• Vizibilitatea și inițializarea variabilelor
Sprint 3. Testarea codului și stăpânirea puterii și flexibilității claselor.
• Introducere în testare
• Instrumente de testare și depanare
• Ciclul de viață al obiectului
• Supraîncărcarea operatorului
• Eroare de procesare. Excepții
Sprint 4. Împărțim codul în mai multe fișiere și ne aprofundăm cunoștințele despre algoritmi standard.
• Iteratoare
• Algoritmi de căutare
• Stivă, coadă, dec
• Distribuția codului între fișiere
Căutați proiectul serverului
Faceți codul orientat pe obiecte, scrieți un cadru pentru testele unitare și împărțiți codul în fișiere.
3 module130 ore
Performanță și optimizare
Veți învăța să evaluați eficacitatea unei aplicații de înaltă performanță înainte și după dezvoltarea acesteia. Aflați cum să lucrați cu fișiere și expresii regulate. Familiarizați-vă cu structura internă a containerelor. Acest lucru vă va permite să înțelegeți cum să configurați elementele de limbă pentru a funcționa eficient. Pentru a evita copierea inutilă în codul dvs., master muta semantica.
Sprint 5. Lucrăm la viteza codului și cu fișierele.
• Profilare și accelerare
• Trucuri de streaming
• Cam de complexitate. Teoria vitezei
• Lucrul cu fișiere
Sprint 6. Învață să gestionezi memoria.
• Model de memorie în C++
• Lista legată individual
Sprint 7. Înțelegem structura internă a containerelor și stăpânim semantica mișcării.
• Containere liniare eficiente
• Mutare semantică
Proiectul „Propriul tău preprocesor”
Implementați singur o parte din C++, și anume preprocesorul, care transmite codul sursă compilatorului și procesează directivele.
Proiect „Lista legată individual”
Veți crea propria dvs. versiune a unei liste cu legături unice, un container care acceptă adăugarea și eliminarea eficientă a elementelor.
Proiectul „Vector simplu”
Veți scrie propria versiune a unui vector, un container care oferă acces eficient la elemente.
4 module120 ore
Calitatea codului
Veți învăța instrumente care mențin codul ordonat și protejat de erorile umane: spații de nume, constanță, RAII. Aflați cum să vă salvați programul de durerile de creștere. Stăpânește polimorfismul dinamic.
Sprint 8. Studiem containerele asociative și spațiile de nume.
• Containere asociative
• Nume și spații de nume
Sprint 9. Simplificam codul folosind pointeri inteligente si intelegem conceptul de comportament nedefinit.
• Indicatoare inteligente
• Comportament nedefinit
Sprint 10. Continuăm să simplificăm codul folosind moștenirea și polimorfismul.
• Moștenirea și polimorfismul
Sprint 11. Stăpânim practicile de proiectare software.
• Constanța ca element al proiectării programului
• Idiom RAII
Sprint 12. Obținerea eleganței codului.
• Filosofia caracteristicilor bune
• Transmiterea datelor către funcție
• Obținerea datelor dintr-o funcție
• Refactorizare
Proiectul „Directorul de transport”
Scrieți un program care vă permite să construiți rute de autobuz în oraș.
5 module140 ore
Proiectarea de programe complexe
Veți scrie un vector cu drepturi depline, veți face cunoștință cu șabloane variadice și garanții de siguranță excepționale.
Sprint 13. Să ne încercăm ca dezvoltatori de biblioteci și să luăm în considerare plasarea obiectelor în memorie.
• DIY Vector
• Stocarea obiectelor în memorie
Sprint 14. Ne uităm în interiorul modului în care funcționează polimorfismul, studiem popularul sistem de construcție CMake, învățăm să folosim biblioteci terțe și să le scriem pe ale noastre.
• Tabelul de metode virtuale
• Colectăm într-un mod nou. CMake
Proiectul „Vector container”
Veți dezvolta un vector care își mărește automat dimensiunea, funcționează eficient cu memoria și nu copiază obiecte degeaba.
Proiectul „Directorul de transport”
Împărțiți directorul de transport în două programe: unul construiește baza de date, celălalt procesează interogări.
6 module40 ore
Proiect „Foaie de calcul”
Veți consolida abilitățile de a scrie cod clar și scalabil: veți dezvolta un program mare pe care îl puteți dezvolta în viitor.
Sprint 15. Proiect de absolvire
Proiect de diplomă „Foaie de calcul”
Proiect de diplomă „Foaie de calcul”
Mai întâi, vei apăra un proiect de design pentru un tabel cu celule și formule, apoi vei scrie codul.
Modulul 7148 de ore (numai la cursul avansat)
C++ pentru backend
După programul de bază, puteți urma o specializare suplimentară pentru a utiliza C++ pentru dezvoltarea back-end.
In 3 luni tu:
• Dezvoltarea de software pentru Linux.
• Dobândiți abilități de testare a sarcinii.
• Învață să lucrezi cu Docker și PostgreSQL DBMS.
• Extindeți-vă cunoștințele despre bibliotecile de dezvoltare C++ și utilizați boost:: asio și boost:: beast în proiectul dvs.
Proiectul „Game of Courier”
Scrieți codul pentru backend-ul unui joc mic. În ea, jucătorii de curier concurează pentru a vedea cine poate să navigheze cel mai bine în labirintul străzilor și să livreze numărul maxim de comenzi.
K
kudryashovda
03.10.2020 G.
Trece!
Aș dori să împărtășesc observațiile mele despre cursul pentru dezvoltatori C++. Cursul a început acum 4 săptămâni, plus înainte de asta am petrecut o lună întreagă rezolvând probleme în partea gratuită a cursului. Permiteți-mi să clarific imediat - echipa cursului colectează în mod constant feedback de la studenți - mai întâi completând formulare anonime, iar acum printr-un concurs de recenzii. Pentru o recenzie pe tema concursului s-a promis un pachet de cafea :) Altfel, cum altfel...
Un dezvoltator C# este o persoană care scrie o „vrajă” magică pe computer - cod. Pentru ca computerul să înțeleagă ce și când să numere, faceți și afișați pe ecran. Fiecare dezvoltator C# simte cât de mult este respectat de cei din jur. El decide singur unde să lucreze. Și de aceea lucrează uneori sub palmieri.
4,1
19 990 ₽