Schița de curs

Introducere

  • Prezentare generală a caracteristicilor și aplicațiilor C

Pregătirea mediului de dezvoltare

  • Alegerea unui IDE
  • Configurarea compilatorului

Scrierea unui program de probă

  • Definirea problemei
  • Codificarea în conformitate cu cerințele

Definirea domeniului de aplicare al variabilelor și funcțiilor

  • Înțelegerea domeniului de aplicare, a vizibilității și a duratei de viață
  • Lucrul cu clasele de stocare: auto, extern, register, static

Gestionarea datelor într-un program C

  • Dincolo de tipurile de date primitive
  • Lucrul cu tipuri de date avansate: structuri, liste legate, etc.
  • Stocarea diferitelor tipuri de date în aceeași locație de memorie

Modificarea proprietăților unei variabile

  • Dincolo de modificatorii de tip
  • Lucrul cu calificatorii de tip: constant, volatile etc.

Manipularea biților în C

  • Lucrul cu date mai mici decât un octet
  • Lucrul cu operatorii de manipulare a biților

Controlul fluxului programului dvs.

  • Dincolo de secvențiere
  • Utilizarea instrucțiunii goto

Citirea și scrierea datelor

  • Recapitulare a funcțiilor de intrare/ieșire
  • Îmbunătățirea lizibilității ieșirii

Dezvoltarea codului pentru mai multe platforme

  • Înțelegerea directivelor compilatorului
  • Compilarea condiționată a codului

Îmbunătățirea performanței programului

  • Macros vs funcții
  • Definirea macrourilor pentru a executa fragmente de program

Alocarea dinamică a memoriei

  • Avantajul folosirii pointerilor: viteza de execuție
  • Indicatori către funcții
  • Access în memorie și manipularea adresei

Depanarea unui program C

  • Tehnici avansate de verificare, detectare și corectare a erorilor
  • Lucrul cu gdb (Gnu Debugger)

Crearea unei biblioteci statice

  • Cum se leagă o bibliotecă statică în fișierul executabil
  • Crearea unei biblioteci statice

Crearea unei biblioteci partajate

  • Biblioteci statice vs biblioteci partajate (biblioteci dinamice)
  • Modul în care o bibliotecă partajată este legată și încărcată în memorie la momentul execuției
  • Crearea unei biblioteci partajate

Abstractizarea datelor în programul dvs.

  • Prezentare generală a interfeței, specificației și implementării
  • Crearea unui tip de date abstract
  • Testarea de regresie a unui tip de date abstract

Searching și sortarea datelor

  • Searching array-uri folosind căutarea liniară, căutarea binară etc.
  • Sortarea tablourilor utilizând sortarea prin selecție, sortarea prin inserție, sortarea cu bule.

Interproces Communication și semnale

  • Înțelegerea proceselor, a socket-urilor și a semnalelor
  • Implementarea IPC folosind fișiere partajate, memorie partajată, țevi, cozi de mesaje, prize, semafoare etc.

Efectuarea programului C în paralel

  • Rularea simultană a diferitelor părți ale unui program prin multithreading
  • Scrierea unui fir de execuție

Rețele avansate Programming

  • Recapitulare a TCP, UDP, IP și a altor protocoale dominante
  • Deservirea mai multor porturi, supraviețuirea întreruperilor bruște ale rețelei etc.
  • Scrierea unor API-uri de socket puternice

Către un cod de înaltă calitate

  • Revizuirea codului de către colegi și programarea paralelă
  • Importanța codării iterative (refactoring)

Rezumat și concluzii

Cerințe

  • Experiență în programare C

Audiență

  • Programatori
  • Dezvoltatori
 28 ore

Numărul de participanți


Pret per participant

Mărturii (2)

Upcoming Courses

Categorii înrudite