Kursplan
Introduktion
- Översikt över C-funktioner och applikationer
Förbereda utvecklingsmiljön
- Att välja en IDE
- Konfigurera kompilatorn
Att skriva ett exempelprogram
- Att definiera problemet
- Kodning enligt krav
Definiera omfattningen av variabler och funktioner
- Förstå omfattning, synlighet och livslängd
- Arbeta med lagringsklasser: auto, extern, register, static
Hantera data i ett C-program
- Bortom primitiva datatyper
- Arbeta med avancerade datatyper: strukturer, länkade listor, etc.
- Lagring av olika datatyper på samma minnesplats
Ändra egenskaperna för en variabel
- Bortom typmodifierare
- Arbeta med typkvalificerare: konstant, flyktig, etc.
Manipulera bitar i C
- Arbeta med data mindre än en byte
- Arbeta med bitmanipuleringsoperatörer
Styr flödet av ditt program
- Bortom sekvensering
- Använder goto-satsen
Läsa och skriva data
- Sammanfattning av ingångs-/utgångsfunktioner
- Förbättrar utdataläsbarheten
Utveckla plattformsövergripande kod
- Förstå kompilatordirektiv
- Kompilera kod villkorligt
Förbättra programprestanda
- Makron vs funktioner
- Definiera makron för att köra programfragment
Dynamisk allokering av minne
- Fördel med att använda pekare: exekveringshastighet
- Pekare till funktioner
- Accessminne och manipulera adressen
Felsökning av ett C-program
- Avancerade tekniker för att kontrollera, upptäcka och korrigera fel
- Arbeta med gdb (Gnu Debugger)
Skapa ett statiskt bibliotek
- Hur ett statiskt bibliotek länkas till en körbar fil
- Skapa ett statiskt bibliotek
Skapa ett delat bibliotek
- Statiska bibliotek vs delade bibliotek (dynamiska bibliotek)
- Hur ett delat bibliotek länkas och laddas in i minnet vid körning
- Skapa ett delat bibliotek
Abstrahera data i ditt program
- Översikt över gränssnitt, specifikation och implementering
- Skapa en abstrakt datatyp
- Regressionstestning av en abstrakt datatyp
Searching och sortering av data
- Searcharrayer med linjär sökning, binär sökning, etc.
- Sorteringsmatriser använder urvalssortering, infogningssortering, bubbelsortering
Interprocess Communication och signaler
- Förstå processer, uttag och signaler
- Implementering av IPC med hjälp av delade filer, delat minne, pipes, meddelandeköer, sockets, semaforer, etc.
Få ditt C-program att köras parallellt
- Köra olika delar av ett program samtidigt genom multithreading
- Skriver en tråd
Avancerat Networking Programming
- Sammanfattning av TCP, UDP, IP och andra dominerande protokoll
- Betjänar flera portar, överlever plötsliga nätverksstörningar, etc.
- Skriver kraftfulla socket API:er
Mot högkvalitativ kod
- Peer code review och parallell programmering
- Vikten av iterativ kodning (refaktorering)
Sammanfattning och slutsats
Krav
- C programmeringserfarenhet
Publik
- Programmerare
- Utvecklare
Vittnesmål (2)
övningarna och metodiken
Javier MIllan Rios - si
Kurs - Advanced C Programming
Machine Translated
An interesting and broad scope