3. Примеры проектов
1. Холодильник спамер
2. Безопасный фитнес браслет и стоимость безопасности
3. Умный дом симпатизирующий грабителям
4. ПО для Атомных Реакторов
5. Умный дом, Ардуино, и дети дошкольного возраста
6. Умные устройства: например, активные камеры
7. Камеры – «хакеры»
8. Google Translate и смерть Эсперанто
9. Готовь сани лыжи летом
10.Эмуляция тяжелой техники и снежные истории страховых
агентов
11.Дополненая реальность: Магазин, Музей и Банк
12.Виртуальная реальность
13.Дубайские рассказы о самом умном роботе в мире из
сердца Сибири
6. История С++
1983 – зарождение языка
1998 – стандарт С++ 98
2003 – стандарт С++ 03
2011 – С++ 11
2014 – С++ 14
2015 – C++ Core Guidelines
2017 – C++ 17 (ожидаемо)
7. C++ Core Guidelines
Бьерн Страуструп
Герб Саттер
● Опубликованы в сентябре 2015
● Open source (github)
● MIT-style (contributor) лицензия
● Открыты для дополнения
● Сейчас: около 250 страниц А4
https://github.com/isocpp/CppCoreGuidelines
8. Core Guidelines: идеология
"Within C++ is a smaller, simpler, safer language
struggling to get out." - Bjarne Stroustrup
● Современный С++ 11/14/17 (прицел на
будущее)
● Автоматизируемые правила, где возможно
● Безопасность и простота кода
● Фокус на высокоуровневых вещах:
○ типы и интерфейсы
○ управление ресурсами (в т.ч. памятью)
○ потокобезопасность
9. Core Guidelines: цели
● Использование накопленных годами знаний
● Унификация практик между организациями
● Получить качественный код:
○ статически типо-безопасный
○ без утечки ресурсов
○ с ранней диагностикой ошибок в логике
● Помочь новичкам в изучении С++
10. 1. Непосредственно правила
2. Guideline Support Library (GSL, header-only) -
функции и типы, рекомендуемые Гайдланами
https://github.com/Microsoft/GSL
1. Checker Tool (Visual Studio Add-in) -
автоматическая проверка правил
https://blogs.msdn.microsoft.com/vcblog/2015/12/03/c-
core-guidelines-checkers-available-for-vs-2015-update-1/
Core Guidelines: компоненты
11. С++: полезные ссылки
https://isocpp.org/ – сайт, посвященный работе комитета
стандартизации С++ и сопутствующим вопросам
http://open-std.org/JTC1/SC22/WG21/docs/papers/2016/n4606.pdf –
черновой вариант следующего стандарта С++17
https://google.github.io/styleguide/cppguide.html – Google C++ Style
Guide
http://www.codingstandard.com/section/index/ – High Integrity C++
Coding Standard
12. Литература по С++
1. Гради Буч «Объектно-ориентированный анализ и проектирование с
примерами приложений на С++»
На мой взгляд это одна из лучших книг для настоящего, а не шапочного,
знакомство с ООП.
2. Scott Meyers «Effective C++» / «More Effective C++», издание 1, 2 и 3
Книга состоит из набора атомарных советов – областей С++. Это одна из
настоятельно рекомендованных к прочтению книг в большинстве топовых IT
компаний, например Microsoft.
3. Scott Meyers «Effective STL»
Советую прочитать книгу хотя бы раз и в дальнейшем обращаться как к
справочнику.
4. Саттер Герб «Решение сложных задач на С++», часть 1 и 2.
Очень советую прочитать обе книги дважды от корки до корки, а потом
самостоятельно прорешать предложенные задачи.
5. Scott Meyers «Effective Modern C++»
Советую прочитать дважды. Книга состоит из набора атомарных советов –
областей С++. Это одна из настоятельно рекомендованных к прочтению книг
в большинстве топовых IT компаний, например Microsoft.