План на курса
Въведение
- Преглед на функциите и приложенията на C
Подготовка на средата за разработка
- Избор на IDE Конфигуриране на компилатора
Писане на примерна програма
- Дефиниране на проблема Кодиране според изискванията
Определяне на обхвата на променливите и функциите
- Разбиране на обхвата, видимостта и живота Работа с класове за съхранение: auto, extern, register, static
Управление на данни в C програма
- Отвъд примитивните типове данни Работа с разширени типове данни: структури, свързани списъци и т.н. Съхраняване на различни типове данни в едно и също място в паметта
Промяна на свойствата на променлива
- Отвъд модификаторите на типа Работа с квалификатори на тип: постоянен, променлив и т.н.
Манипулиране на битове в C
- Работа с данни, по-малки от байт Работа с оператори за битова манипулация
Контролиране на потока на вашата програма
- Отвъд последователността Използване на оператора goto
Четене и запис на данни
- Резюме на функциите за вход/изход Подобряване на четливостта на изхода
Разработване на междуплатформен код
- Разбиране на директивите на компилатора. Компилиране на код условно
Подобряване на производителността на програмата
- Макроси срещу функции Дефиниране на макроси за изпълнение на програмни фрагменти
Динамично разпределяне на паметта
- Предимство на използването на указатели: скорост на изпълнение Указатели към функциониране на паметта и манипулиране на адреса
Отстраняване на грешки в C програма
- Разширени техники за проверка, откриване и коригиране на грешки Работа с gdb (Gnu Debugger)
Създаване на статична библиотека
- Как статична библиотека се свързва в изпълним файл Създаване на статична библиотека
Създаване на споделена библиотека
- Статични библиотеки срещу споделени библиотеки (динамични библиотеки) Как споделената библиотека се свързва и зарежда в паметта по време на изпълнение Създаване на споделена библиотека
Абстрахиране на данни във вашата програма
- Преглед на интерфейса, спецификацията и изпълнението Създаване на абстрактен тип данни Регресионно тестване на абстрактен тип данни
SearchСортиране и сортиране на данни
- Search Сортиране на масиви с помощта на линейно търсене, двоично търсене и т.н. Сортиране на масиви чрез сортиране по избор, сортиране чрез вмъкване, сортиране с балончета
Междупроцес Communication и сигнали
- Разбиране на процеси, сокети и сигнали. Внедряване на IPC с помощта на споделени файлове, споделена памет, канали, опашки от съобщения, сокети, семафори и др.
Направете вашата C програма да работи паралелно
- Изпълнение на различни части от програма едновременно чрез многопоточност Писане на нишка
Усъвършенствани мрежи Programming
- Резюме на TCP, UDP, IP и други доминиращи протоколи Обслужване на множество портове, оцеляване при внезапни прекъсвания на мрежата и т.н. Писане на мощни API за сокет
Към висококачествен код
- Партньорски преглед на кода и паралелно програмиране Значението на итеративното кодиране (рефакторинг)
Обобщение и заключение
Изисквания
- Опит в програмирането на C
Публика
- Програмисти
- Разработчици
Oтзиви от потребители (2)
упражненията и методиката
Javier MIllan Rios - si
Курс - Advanced C Programming
Машинен превод
An interesting and broad scope