Технология программирования (ТП)
Присутствие преподавателей на последней неделе в М-304а:
Даниилу Новикову: Вадим или Дмитрий смогут поставить оценки.
Андрей Мохов — 27.12
- Вадим Никитин — 30.12 после обеда
- Дмитрий Козлюк — 30.12 до обеда
Организация
-
Оценка за зачет выставляется после выполнения и защиты всех ЛР.
-
Студент защищает ЛР одному и тому же лаборанту весь семестр,
какому — решается на первой защите.
Бригады (при нехватке машин) формируются на весь семестр,
защищают ЛР одному лаборанту, но индивидуально.
-
Есть резервная версия этой страницы
на случай проблем с сайтом (они бывают). Сохраните в закладки.
Лекции
Неделя |
Дата |
Тема |
1 |
02.09 |
1. Основы языка программирования C++
|
2 |
09.09 |
2. Системы сборки. Системы контроля версий (VCS)
-
Системы сборки
-
Системы контроля версий
|
3 |
16.09 |
3. Структурирование программы и её взаимодействие с пользователем
|
4 |
23.09 |
3. Структурирование программы. Представление данных в программе
|
5 |
07.10 |
5. Программирование низкоуровневых задач
|
6 |
14.10 |
6. Использование внешних программных библиотек
|
7, 8 |
21.10, 28.10 |
7, 8. Объектно-ориентированное программирование в C++
и
Включает больше, чем было на лекциях — этого требоваться не будет.
|
не успели
|
9. STL
Несколько слайдов о шаблонах
|
Лабораторные работы
Файл sdt.h
для простого подключения стандартных библиотек (слегка измененный страуструповский).
Дата |
Тема |
А-01-14 |
А-02-14 |
02.09 |
09.09 |
1. Знакомство с языком C++ и средствами разработки
|
16.09 |
23.09 |
2. Системы контроля версий
Вопросы к защите
|
30.09 |
07.10 |
3. Обработка текстовых данных
|
28.10 |
18.11 |
4. Программирование низкоуровневых задач
Вспомогательный материал, обещанный А-01-14.
|
Литература
Язык С++
-
Bjarne Stroustrup. Programming: Principles and Practices Using C++ =
Страуструп Б. Программирование: принципы и практика использования C++.
Рекомендованный учебник. Перевод на русский имеется только для первого издания.
Страница книги (комментарии, советы, примеры кода).
-
Stanley Lippmann, Josee Lajoie, Barbara Moo. C++ Primer, 5th Edition. =
Липманн С., Лажойе Ж., Му Б. Язык программирования С++: вводный курс, изд. 5.
Популярный учебник, предполагающий уверенное владение каким-либо еще языком программирования, помимо С++.
Печатные экземпляры доступны в М-304а.
-
Подбельский В. В. Язык Си++: Учебное пособие. — 5-е изд. — М.: Финансы и статистика, 1999. — 560 с.: ил. УДК: П44.
Существенно устаревшая книга, но только она массово есть в НТБ МЭИ.
Алгоритмы и структуры данных
- Роберт Седжвик. Фундаментальные алгоритмы на С++, 2-е издание / пер. с англ. (Algorithms in C++). — М.: DiaSoft — 2001 г. — 688 с.
- Sorting Algorithm Animations — демонстрация работы различных алгоритмов сортировки.
- Томас Х. Кормен. Алгоритмы. Вводный курс / пер. с англ. (Algorithms Unlocked). — М.: Вильямс. — 2014 г. — 208 с.
- Томас Х. Кормен и др. Алгоритмы. Построение и анализ / пер. с англ. (Introduction to Algorithms) — М.: Вильямс. — 2012 г. — 1296 с.
- Стивен Скиена. Алгоритмы. Руководство по разработке, 2-е издание / пер. с англ. (The Algorithm Design Manual, Second Edition) — СПб.: БХВ-Петербург. — 2011 г. — 720 с.
Электронные ресурсы
-
Сайт C++ Reference —
неофициальный, но подробный справочник, достаточно авторитетный
в профессиональных кругах.
Системы контроля версий
-
The Git Parable —
статья, объясняющая логику построения Git.
-
Pro Git —
бесплатная элекронная книга-руководство по Git.
Программное обеспечение
Для быстрой проверки небольших программ и обмена примерами удобно использовать
Ideone.com — бесплатный online компилятор.
Системы контроля версий
-
Сайт Git содержит не только саму систему контроля версий
(с управлением через командную строку), но и ссылки на графические утилиты
для различных ОС. Рекомендуется: SourceTree или TortoiseGit для Windows,
SourceTree для OS X, RabbitVCS для Linux.
-
Subversion (SVN)
устанавливается или с сайта, или часто под Windows в составе
TortoiseSVN —самой популярной
из графических утилит для SVN. В Linux рекомендуется RabbitVCS
(и для SVN, и для Git).
-
GitHub —самый крупный и популярный хостинг Git. Бесплатно предоставляются только открытые хранилища (то есть видимые для всех).
Обладает обширной инфраструктурой и развитым web-интерфейсом.
-
BitBucket —хостинг Git и Mercurial (Hg),
бесплатно предоставляет открытые и частные хранилища.
Дополнительных возможностей меньше, чем на GitHub.
Преподаватели
Авторы курса: Дербенев Н. В., Козлюк Д. А., Никитин В. В.,
кафедра Управления и информатики НИУ «МЭИ», 2013—2016 г. г.
Ответственный за страницу: Козлюк Д. А.