Курс Основы программирования на С++ — Июль 2019
О чём курс
О курсе
C++ формирует системное понимание фундаментальных понятий программирования и физических процессов, протекающих при написании и выполнении кода. Этот язык относится к семейству си-подобных языков, чей синтаксис и принципы легли в основу большинства современных языков программирования, включая C, Visual C++, C# и Java.
Обучение построено как исключительно практическое исследование вводимых понятий и терминологии. Такой подход позволяет преодолеть сложности, с которыми часто сталкиваются начинающие разработчики при отсутствии чёткой системы в освоении материала.
Для кого курс
Программа представляет собой базовый уровень и разработана для тех, кто хочет научиться программировать, но не имеет предварительного опыта работы ни с одним языком программирования.
Что внутри
Обучение охватывает ключевые концепции синтаксиса, архитектуры и практических возможностей языка:
- Базовые принципы: лексическая структура языка, фазы трансляции исходного кода, компиляция, директивы, запуск проекта и работа с базовыми типами данных.
- Управление памятью и переменными: физический смысл и ограничения, которые имеют указатели и ссылки, особенности статической, автоматической и динамической памяти, а также правила работы с массивами.
- Логика и синтаксические конструкции: все категории операторов, утверждения выбора, итерации и перехода, создание пользовательских структур и перечислений.
- Функциональный подход: прототипы, параметры по умолчанию, перегрузка функций, работа со стандартными библиотеками и потоковым вводом-выводом.
- Объектно-ориентированное программирование: создание классов и объектов, спецификаторы доступа, конструкторы и деструкторы, а также ключевые принципы — инкапсуляция, наследование и полиморфизм.
- Обобщённое программирование и структуры данных: создание шаблонных функций и классов, а также введение в возможности стандартной библиотеки шаблонов (STL).
Что даёт курс
Слушатели курса получают ясное представление о базовых терминах, синтаксических конструкциях и внутренних процессах выполнения кода. Успешное прохождение программы создаёт прочную основу для последующего изучения любого другого языка программирования.
Программа обучения
- Базовые понятия языка программирования С++. Лексическая структура языка. Первичный (исходный) файл (код) и файл выполнения, фазы трансляции исходного кода. Разновидности лексем (токенов), понятие единицы трансляции и единицы выполнения. Понятие объявления и определения. Понятие директив и основной функции. Понятие утверждения и его разновидности. Роль компилятора, создание первого проекта и запуск созданной программы.
- Объекты и типы. Базовые (фундаментальные) типы данных (int, float, double, char, bool). Создание (определение) переменной (объекта) на основе базовых типов. Определение “размера” созданного объекта. Понятие стандартных потоков ввода-вывода данных в/из программы. Ввод/Вывод значений в/из созданных переменных на консоль.
- Указатели и ссылки. Физический смысл указателя. Сходство указателей и ссылок. Независимые ссылки. Ограничения на ссылки.
- Понятие операнда, оператора и операции. Разновидности операторов: арифметические, логические, сравнения, составного присваивания, побитовые операторы, приведения типа и другие. Понятие префиксных, инфиксных и постфиксных операторов. Примеры использования операторов и операций.
- Утверждения. Утверждение выражения. Утверждения выбора: if и switch. Утверждение блок. Утверждения итерации: for, while, do … while. Утверждение перехода: continue, goto, break.
- Понятие глобальных и статических переменных и соответствующие им объекты. Структуры (structure) и перечисления (enum), примеры использования.
- Функции. Объявление и определение функции, прототипы функции. Параметры и аргументы функций. Параметры по умолчанию. Передача параметров с помощью ссылок и указателей. Перегрузка функций. Использование глобальных и статических объектов. Понятие библиотеки, библиотеки встроенных функций. Функции потокового ввода-вывода.
- Понятие статической, автоматической и динамической памяти. Области видимости объектов. Примеры использования объектов для данных моделей памяти.
- Массивы. Определение массива, размер и размерность. Создание массивов в статической и автоматической памяти. Указатели и ссылки на массивы. Создание массивов в динамической памяти. Указатели на строки.
- Понятие пользовательского типа – класс. Классы и объекты. Связь между структурами и классами. Члены класса: код и данные класса. Спецификаторы доступа. Инкапсуляция, полиморфизм и наследование как обязательные понятия объектно-ориентированного программирования.
- Перегрузка функций (методов) класса. Дружественные функции. Дружественные классы. Специальные функции класса: конструкторы и деструкторы. Конструкторы с параметрами. Перегрузка конструкторов. Конструктор копирования.
- Наследование. Понятие базового и производного классов. Понятие открытого, закрытого и защищенного наследования. Доступ к членам базового класса при организации наследования, множественное наследование. Передача параметров конструктору базового класса. Виртуальные базовые классы.
- Полиморфизм. Понятие виртуальных функций. Доступ к виртуальной функции с помощью ссылки на объекты. Абстрактные классы.
- Понятие обобщенных (шаблонных) функций. Функции с двумя и более обобщенными типами. Перегрузка обобщенных (шаблонных) функций. Обобщенные классы.
- Система ввода-вывода языка программирования С++. Понятие потока. Стандартные потоки ввода-вывода. Форматированный вывод данных, флаги форматирования. Работа с файлами: открытие и закрытие файла, чтение и запись данных в байт формате. Чтение и запись текстовых файлов. Функции работы с файлами.
- Введение в Стандартную библиотеку шаблонов (STL). Понятие и примеры использования векторов, линейных списков, очередей, строк. Тестирование
Теги курса
Выпуски серии 2
Все 2Другие материалы школы 3
УЦ Учебный центр Бейсик Все материалыОтзывов пока нет. Будьте первым!
Этот курс сейчас в процессе организации складчины. Нажмите кнопку «Записаться» и ожидайте старта — вам придёт уведомление. Когда складчина стартует, в карточке курса будет указан актуальный взнос. Текущая цена пока в процессе формирования и может отличаться от финальной.
Да, мы стремимся, чтобы финальный взнос был не больше ≈10% от оригинальной цены курса. Чем больше участников записывается в складчину, тем ниже выходит взнос для каждого.
Нажмите кнопку «Записаться» и авторизуйтесь на сайте через email (через ту же почту, которую будете использовать для входа). В личном кабинете вас будут ждать инструкции, как пригласить других участников — чем больше людей записалось, тем быстрее стартует складчина и тем ниже взнос. Как только складчина готова к приобретению, вам придёт уведомление.