C++ 1MIT осень 1 2019 — различия между версиями

Материал из CSC Wiki
Перейти к:навигация, поиск
(Лабораторные и домашние)
Строка 11: Строка 11:
  
 
Презентации первого семестра:
 
Презентации первого семестра:
 +
[* https://wiki.compscicenter.ru/images/9/94/Lect02.pdf Лекция 2. Указатели.]
 +
  
 
Книги
 
Книги

Версия 11:22, 13 сентября 2019

Лекции

Лекторы: Суворов Егор Федорович (egor_suvorov@mail.ru), Линский Евгений Михайлович (evgeny.linsky@gmail.com)

Презентации первого семестра: [* https://wiki.compscicenter.ru/images/9/94/Lect02.pdf Лекция 2. Указатели.]


Книги

  • С нуля
    • С. Дэвис, C++ для чайников
    • Г. Шилдт, С++ базовый курс
  • Язык С
    • Б. Керниган, Д. Ритчи, Язык программирования C
    • Б. Керниган, Р. Пайк, Практика программирования
  • Язык C++
    • Б. Страуструп, Язык программирования С++
    • Б. Эккель, Философия C++
  • Дополнительно
    • Б. Страуструп, Дизайн и эволюция языка C++
    • С. Майерс, Эффективное использование С++/Эффективное использование STL
    • Г. Сеттер, Решение сложных задач на C++/Новые сложные задачи на C++
    • Р. Седжвик, Алгоритмы на C++

Лабораторные и домашние

  • GitHub — гит-репозиторий с описаниями лабораторных (обновляется каждую неделю).
  • Trac — trac для лабораторных.
  • http://trac.compscicenter.ru/hse-svn/cpp19/lastname.firstname — svn для лабораторных (замените lastname.firstname на ваш логин - имя-фамилия транслитом).

Сдача и оценивание

Подробная инструкция по сдаче расположена на главной странице Trac.

По каждому заданию даётся три попытки сдачи, если не написано иное. Обычно первая — примерно через неделю после выдачи, вторая — через неделю и третья — ещё через неделю. Баллы за повторные попытки не снимаются. Теоретически можно сдать один раз в третью попытку, но тогда вы не сможете исправить замечания (которые наверняка будут). Попытки после третьей или после третьего срока сдачи не засчитываются, если нет другой договорённости с преподавателем.

Мы стараемся ставить одинаковые сроки сдачи для всех групп.

Практика Соколов

Преподаватель: Вячеслав Соколов (vi.soksok@gmail.com, +7 921 780 11 12)

Trac: sokolov

deadline первой попытки первой лабораторной: среда 09.11 21:00

Письма просьба идентифицировать префиксом в теме [HSE][CPP]

Linux

  • Минимальный набор для работы из консоли (для Ubuntu):
    • man manual
    • ls list
    • pwd print working directory
    • mkdir make (create) directory
    • cd change directory
    • cp copy
    • rm remove
    • touch "потрогать" объект на файловой системе
    • mv move
    • gcc gnu C compiler
    • make make
    • svn subversion
    • apt aptitude
  • Исследование бинарных артефактов
    • nm list symbols from object files
    • readelf displays information about ELF files
    • c++filt demangle symbols

Для тех, кому хочется поэкспериментировать с консолью

  • Эмуляторы терминала
    • terminator
    • tilix
    • а также много других, легко ищутся
  • Shell
    • bash по умолчанию, но есть кое-что поудобнее, например
    • fish - interactive shell, создан, чтобы быть удобным
    • zsh - для любителей писать скрипты

Системы сборки

Для наших нужд достаточно Make

Если проект становится большим, нужно что-то посложнее, например (альтернативы):

Практика Свиридкин

Преподаватель: Дмитрий Свиридкин (dmisvrl1@gmail.com) Префикс [C++Practice]

Договоренности со студентами:

1. Бинарники складывать в каталог bin, объектники -- в каталог obj

2. Разобравшиеся с make, при желании, могут использовать cmake


Полезные ссылки:

Кратко про make: habr

Дополнительно про mangling

Минимальный набор команд для работы с консолью (bash)

Практика Лапшин Дмитрий

Преподаватель: Дмитрий Лапшин, по вопросам курса писать сюда: au-cpp@ldvsoft.net.

Ссылочки выше и ниже тоже полезны!

Практика Гулецкий

Преподаватель: Артур Гулецкий (hatless.fox@gmail.com)

Префикс в теме письма: [C++TA]

Еще один вариант книги с нуля: C++ Primer, 5th

Makefile

Почитать (opt):

C-string utils

Почитать:

Intrusive lists

Практика Суворов

Преподаватель: Егор Суворов (egor_suvorov@mail.ru)

Префикс в теме письма: [C++TA]

Практика Алфёров

Преподаватель: Василий Алфёров (vasily.v.alferov@gmail.com)

Telegram: @vasiliyalferov

Договорённость со студентами: дедлайн лабораторных работ — начало следующей пары.

Дедлайн по исправлениям лабораторных работ, если они разрешены: неделя после проверки.


Обещанные ссылки: