Автор: Bertrand Meyer
Форма обучения:
дистанционная
Стоимость самостоятельного обучения:
бесплатно
Доступ:
свободный
Документ об окончании:
 
Уровень:
Для всех
Длительность:
26:43:00
Студентов:
1556
Выпускников:
73
Качество курса:
4.67 | 3.67
Курс представляет вторую и третью часть фундаментального учебника "Почувствуй класс. Учимся программировать хорошо с объектами и контрактами". Рассматриваются технологии, поддерживающие программирование, - синтаксис языков программирования, особенности языков, основы компиляции, используемый инструментарий.
Большую часть курса составляет рассмотрение структур данных и алгоритмов. При рассмотрении структур данных основное внимание уделяется динамическим структурам – прежде всего спискам и деревьям. Рассматриваются понятия сложности алгоритмов, рекурсивных алгоритмов. Заключительная лекция курса дает образец инженерного проектирования на примере рассмотрения задачи о топологической сортировке.
 

План занятий

Занятие
Заголовок <<
Дата изучения
Лекция 1
1 час 37 минут
Введение
У слушателей Интернет университета появилась уникальная возможность не только пройти курсы лекций по замечательной книге "Почувствуй класс. Учимся программировать хорошо с объектами и контрактами", но и увидеть, услышать автора книги – профессора Бертрана Мейера. Отвечая на вопросы профессора Владимира Биллига – переводчика книги, Бертран Мейер объясняет, почему этот курс может быть интересен студентам, приступающим к изучению информатики, чем книга может быть интересна преподавателям, читающим подобный курс, чем книга и курсы по ней могут быть интересны профессионалам ИТ. Он рассказывает о том, как учат информатике в ЕТН – одном из старейших учебных заведений Европы, об особенностях этого курса. В беседе затрагиваются и другие вопросы, в частности Бертран говорит о своей любви к русскому языку и о том, как он, будучи школьником, учил русский язык. Эта лекция является хорошим введением в курс, полученным "из первых уст".
-
Лекция 2
1 час 10 минут
Немного об аппаратуре
-
Тест 1
24 минуты
-
Лекция 3
1 час 27 минут
Описание синтаксиса
В лекции обсуждается синтаксис языков программирования и формальные грамматики, как способ описания синтаксиса языка. Вводится классификация языков программирования.
-
Тест 2
24 минуты
-
Лекция 4
1 час 13 минут
Языки программирования
В лекции продолжается рассмотрение языков программирования. Вводятся понятия компилятора и интерпретатора программ. Даются основы компиляции. Рассматривается инструментарий, используемый на всех этапах работы с программами, начиная от текстовых редакторов, заканчивая рассмотрением интегрированных сред разработки, в частности среды разработки Eiffel Studio.
-
Тест 3
24 минуты
-
Лекция 5
1 час 2 минуты
-
Тест 4
24 минуты
-
Лекция 6
1 час 30 минут
Фундаментальные структуры данных, универсальность и сложность алгоритмов
В этой лекции рассматриваются вопросы статической проверки типов, вводится понятие сложности алгоритмов O-большое и О-малое. Рассматриваются массивы, как одна из основных структур данных.
Оглавление
-
Тест 5
24 минуты
-
Лекция 9
1 час 43 минуты
Рекурсия и деревья
В лекции вводится понятие рекурсии, рекурсивных определений. Рассматривается известная задача "Ханойской башне". Широко используемая в программировании структура данных – дерево рассматривается как рекурсивная структура данных. Обсуждаются рекурсивные операции, выполняемые над рекурсивными структурами данных.
Оглавление
-
Тест 8
24 минуты
-
Лекция 10
1 час 44 минуты
Рекурсивные программы
В лекции обсуждается стратегия перебора с возвратами и стратегия "альфа-бета". Обсуждаются вопросы связи рекурсии и циклов, а также алгоритм реализации рекурсии.
Оглавление
-
Тест 9
24 минуты
-
Лекция 11
2 часа 20 минут
Проектирование и инженерия алгоритма: топологическая сортировка
Она представляет собой образец искусства программирования, представляя образец инженерного подхода к проектированию программы. Здесь на примере задачи о топологической сортировке строится инженерное решение, допускающее повторное использование, сочетающее построение эффективного алгоритма и структур данных с проверкой корректности данных, учета ситуаций, которые могут возникать на практике.
Оглавление
-
Введение в Java (по материалам Марко Пиккони)

Оглавление
-
1 час 40 минут
-