Открыто

Модульная программа: С++ Базовый курс и C++ Управление памятью (повтор)

Тема в разделе "Курсы по программированию", создана пользователем Рам, 25 ноя 2014.

Цена: 17000р.
Взнос: 17000р.

Резервный список: 1 участников

  1. 25 ноя 2014
    #1
    Рам
    Рам ОргОрганизатор

    Складчина: Модульная программа: С++ Базовый курс и C++ Управление памятью (повтор)

    С++ от человека из Яндекса
    Преподаватель:
    [​IMG]
    Давыдов Семен Викторович
    Репетитор программирования и информатики.

    Образование: МГТУ им. Баумана, факультет информатики и систем управления, магистр техники и технологии по направлению «Автоматизация и управление» (2009 г.).
    Опыт преподавания – 1 год (Школа программирования, курс C++, управление памятью).

    Презентация С++ Управление памятью



    Курс не для новичков. Предполагается довольно уверенное владение основными конструкциями языка С++, способность самостоятельно запрограммировать хотя бы пузырьковую сортировку или двоичный поиск. Целевая аудитория – junior developer с опытом работы от полугода, который хочет получить серьезный технический скачок, необходимый для дальнейшего развития. Цель курса – этот скачок предоставить.

    С++ – язык, который не прячет от программиста машину. Управление памятью – его прямая обязанность, но только так можно построить поисковый движок, написать компьютерную игру, создать веб-сервер, реализовать видеокодек, разработать систему распознавания речи/изображения, которые имеют шанс на выживание. В этом курсе мы учимся водить машину.
    Указатели. Рекурсия. Списки. Деревья. Стандартные контейнеры. Размещение объектов.
    Аллокаторы. Обработка исключений. Умные указатели. RAII. Эффекты кэш-памяти. Tips & Tricks.
    Три часа хорошего С++ каждую субботу. Много практики. Большие домашние задания, которые надо делать.

    Этот курс – не всестороннее освещение С++, а вполне конкретный взгляд на память со стороны языка.
    Поэтому не будет: паттернов проектирования, мета-программирования на шаблонах, ООП, разработки графического интерфейса,
    сетевого программирования, в общем, всего того, что не имеет отношения к памяти непосредственно.
    Урок 1. Зачем нужно управлять памятью.
    • POD-типы
    • Указатели, статические массивы, строки, функции
    • Различные типы передачи параметров
    • sizeof()
    • Арифметика указателей
    • Структуры, объединения, выравнивание, упаковка
    • Динамическое выделение и освобождение памяти
    • Многомерные массивы. std::vector и std::deque.
    • Тест на определение уровня владением С++.
    Урок 2. Простота обманчива
    • Циклы
    • Условные переходы
    • Арифметические операции
    • Рекурсия
    • Виды рекурсий

    Урок 3. Как обойти список и не заблудиться
    • Списки, деревья
    • std::list, std::set, std::map, hash_set, hash_map
    • Хеширование
    • Хеширование без коллизий
    Урок 4. Как распределяется память и когда нас это не устраивает
    • Приоритетная куча
    • Менеджер памяти
    • Аллокаторы
    • Как распределять память самому

    Урок 5. Классы и объекты
    • Выделение памяти под объекты
    • Размещение объектов в заранее выделенной памяти
    • Конструктор, списки инициализации, offsetof(), копирующий конструктор, оператор присваивания
    • Ленивое и глубокое копирование
    • Квалификаторы доступа (private, public)
    • Преодоление квалификаторов доступа
    • Виртуальные функции
    • Наследование
    • Срезки
    • Указатель на функцию, указатель на член класса, указатель на статический член класса.
    Урок 6. Некоторые алгоритмы.
    • Временная сложность и сложность по памяти
    • Почему std::vector – самый важный контейнер
    • Сортировка и поиск в векторе, в списке, в дереве и в хеше
    • Итераторы
    • Ленивые итераторы

    Урок 7. Как бороться с утечками ресурсов без сборщика мусора
    • RAII
    • Умные указатели
    Урок 8. Черная магия
    • О физическом устройстве памяти
    • Статическая и динамическая память
    • Формула динамической памяти
    • Регенерация
    • Ассоциативность кэша, кэш-линия, кэш-промах
    • Размещение в регистрах
    • Временная и пространственная локальность
    • [​IMG]
      Видеозаписи всех уроков курса
    • [​IMG]
      Методические указания и домашние задания по каждому уроку
    • [​IMG]
      Доступ на закрытый форум для учеников ШП
    • [​IMG]
      Сертификат об успешном окончании курса

    С++ Базовый курс
    Преподаватель
    [​IMG]
    Выпускник МГТУ им. Н.Э. Баумана, главный системный инженер компании,
    занимающейся поставками терминалов самообслуживания на рынок России и СНГ.
    Александр занимается разработкой нового и доработкой уже существующего
    программного обеспечения терминалов, а также его последующей интеграцией
    в окружение банковской системы. Работает преимущественно с новым оборудованием
    и его программным интерфейсом, который чаще всего реализован на C или C++.
    Курс предназначен как для новичков в программировании, так и для тех, кто уже владеет другими языками программирования или языком С++, но на недостаточном уровне, а также для тех, кому не хватает ясных представлений об организации хранения и обработки данных в компилируемых компьютерных программах.
    С++ является языком общего назначения и, сочетая в себе свойства как высокоуровневых, так и низкоуровневых языков, позволяет решать самый обширный круг задач, возникающих в программировании.
    Целью курса является заложить основы алгоритмического мышления, научить пользоваться основными концепциями структурного и объектно-ориентированного программирования для решения типичных задач, встающих перед программистом. Курс в достаточно полном объёме знакомит слушателя с возможностями языка С++, заложенными в нём для реализации указанных целей.
    * проектировать алгоритм для решаемой задачи, в том числе определять необходимый набор классов, функций и переменных;
    * писать многомодульные программы;
    * обрабатывать потоковый ввод, преобразовывать и проверять на корректность текстовые данные, осуществлять вывод данных в требуемом формате;
    * обрабатывать данные на уровне бит, в том числе осуществлять упаковку и простое кодирование данных;
    * разрабатывать структуру классов для решаемой задачи, реализуя принципы модульности, минимальной связанности, разделения интерфейса и реализации.
    * проверка соответствия открывающих и закрывающих скобок в программе на С++; удаление комментариев из программы на С++; другое простое форматирование и проверка текста;
    * простые игры типа "Крестики-нолики", "Пятнашки" в консольном режиме;
    * извлечение и изменение метаинформации ID3v1-тега mp3-файла;
    * печать дерева подкаталогов и файлов заданного каталога;
    * псевдографическая реализация игры в шахматы для двух игроков.
    Переменные и типы данных
      • встроенные типы данных
      • объявление переменных
      • объявления typedef
      • инициализация переменных
      • константные переменные
      • операция sizeof
      • явное и неявное преобразование типов
      • массивы
    Операции



      • арифметические операции
      • арифметические выражения
      • операция присваивания
      • приоритет операций
    Стандартный ввод/вывод



      • объекты cin и cout
      • операции ввода из потока и вывода в поток
      • полезные функции для потокового ввода и вывода
      • форматирование вывода
      • Управление потоком выполнения программы
      • конструкции ветвления (if-else, switch)
      • конструкции повторения (for, while, do-while)
      • понятие о функциях
    Сложные типы данных



      • структуры
      • объявление структур
      • инициализация структур
      • обращение к полям структур
      • перечисления
      • объединения
    Побитовые операции



      • двоичное представление целых чисел
      • побитовые операции сложения, умножения, инверсии, исключающего "или"
      • битовые маски
      • упакованные данные
    Указатели и массивы. Динамически выделяемая память



      • статические массивы: объявление, указание размера, инициализация
      • обращение к несуществующим элементам массива
      • указатель
      • операции взятия адреса и разыменования
      • адресная арифметика
      • связь массивов и указателей
      • динамическое выделение памяти: операции new/new[] и delete/delete[]
      • утечки памяти
      • Си-строки как особый вид массивов
      • многомерные статические и динамические массивы
      • динамические структуры данных
    Функции



      • передача параметров в функцию: по значению и через указатель
      • передача в функцию массивов
      • константные параметры
      • ссылки
      • передача параметров по ссылке
      • возвращаемое значение: void, указатель, ссылка
      • рекурсия
      • указатель на функцию
      • массивы функций
      • функция в качестве аргумента другой функции
      • перегрузка функций
    Работа с файлами



      • чтение/запись в текстовом режиме
      • ввод: посимвольный, по словам, построчный
      • чтение/запись в бинарном режиме
      • перенаправление стандартного ввода и вывода
    Классы



      • поля и методы
      • конструкторы и деструкторы
      • модификаторы доступа
      • инкапсуляция
      • статические члены и методы класса
      • константные методы
      • инициализация объектов класса
      • списки инициализации
      • класс std::string стандартной библиотеки C++
    Наследование, полиморфизм



      • наследование, типы наследования
      • последовательность вызова конструкторов и деструкторов
      • абстрактные классы
      • переопределение методов базового класса
      • обращение к методам базового класса
      • виртуальные методы
      • виртуальный деструктор
      • полиморфизм
      • специфичное для С++ приведение типов
    Перегрузка



      • перегрузка операций +, +=, [], >>, <<, ==, * и др. для своих типов данных
    Обобщённое программирование



      • шаблонные функции
      • шаблонные классы

    Предлагаю приобрести модульную программу: С++ Базовый курс и С++ Управление памятью.
    Стоимость 17000 руб. Экономия 1940 руб.
     
  2. Последние события

    1. Regbiman
      Regbiman не участвует.
      26 июн 2024
    2. Антон Чигур
      Антон Чигур не участвует.
      10 июн 2018
    3. Антон Чигур
      Антон Чигур участвует.
      10 июн 2018
    4. BomberMan
      BomberMan не участвует.
      24 сен 2017
  3. Обсуждение
  4. 26 ноя 2014
    #2
    GoldFish
    GoldFish БанЗабанен
    Дык это школа программирования! У них нету С++ Управление памятью. Это старая ссылка.