Бьярн Страуструп

13 Октябрь 2010. 4-часовой семинар

Каковы основные методы эффективного программирования на C++ и создания легко сопровождаемого кода?

В рамках мастер-класса будут рассмотрены подходы к проектированию и программированию, основанные на активном использовании статически-типизированных интерфейсов и управлении ресурсами. О базовых концепциях вроде иерархий классов и объектно-ориентированном программировании будет лишь упомянуто, исходя из предположения, что аудитория знает об этом достаточно много. Внимание будет уделено тому, как в процессе проектирования и программирования создавать блоки, из которых в дальнейшем могут быть легко построены более крупные и тяжеловесные системы и комплексы.

Ключом к надежности и производительности являются простые “легковесные” классы, безопасность типов, отсутствие прямого использования указателей и встраивание. Понятие классовой инвариантности является одним из ключевых элементов и приводит к стратегии обработки ошибок, основанной на исключениях. В рамках мастер – класса будет рассматриваться дизайн конкретных классов, создаваемых с применением этих концепций. Реализация стратегии управления ресурсами, которая основана на небольших локальных переменных (RTTI, инициализация выделения ресурсов), будет представлена на примерах с использованием C++0x (семантика перемещения, unique_ptr). Эти примеры можно реализовать и на C++98, но их реализация будет являться менее простой.

В перечисленных выше методах важную роль играют шаблоны, которые являются основой для статической типизации контейнеров и алгоритмов, обеспечивают общность и позволяют сократить вычислительные и производственные расходы. На мастер-классе будет представлено использование шаблонов для обобщенного программирования (в т.ч. с применением STL - стандартной библиотеки контейнеров и алгоритмов С++) и метапрограммирования.

Продолжительность: 4 часа.

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

Стоимость участия в курсе “Виртуозное программирование”

Сентябрь Октябрь
5 400 руб 6 480 руб

Семинар состоится в Большом зале Дворца культуры МГТУ им. Н. Э.Баумана (г. Москва, ул. Рубцовская набережная, дом 2/18). Все остальные мероприятия будут проходить на территории Культурного центра ГУ-ВШЭ, по адресу: Москва, Воронцово поле, дом 5а. Подробная информация о местах проведения мероприятий конференции находится здесь: http://2010.cee-secr.org/venue

C++ Tutorial: Advanced Programming Techniques

Биография

Бьярн Страуструп – создатель языка программирования C++, автор ряда книг (включая “Программирование - принципы и практика использования C++” и “Язык программирования C ++”), а также автор многочисленных статей. К областям его научных исследований относятся распределенные системы, дизайн, методы программирования, инструменты разработки программных средств и языки программирования. Он принимает активное участие в процессе создания новых версий стандартов ISO С++.

Доктор Страуструп – профессор кафедры Инжиниринга в Университете Компьютерных Техаса. Его ранние работы по С++ были выполнены в AT&T Bell Labs в Мюррей Хилл Нью-Джерси, и он до сих пор продолжает сотрудничать с этой организацией в качестве ее почетного члена.

Бьярн Страуструп является членом американской Национальной академии инженерных наук, почетным членом IEEE и АСМ.

Родился в 1950 в Дании. Кандидат наук в области математики и информатики, 1975, Университет г. Орхус, Дания. Доктор наук в области информатики, 1979, Кембриджский университет, Англия.