Введение в презентацию 0:11 Презентация проводится Стэнфордским центром профессионального развития. В двух словах, сокращенная версия второго раздаточного материала. Учебная программа включает несколько языков и концепций.
Обзор языков и парадигм 0:36 Рассматриваются языки: C, ассемблер, C++ и параллельное программирование. Парадигмы: процедурная и объектно-ориентированная. Программирование на C и C++ отличается от программирования на Scheme или Python.
Процедурная парадигма в C 1:40 Программирование на C ориентировано на процедуры. Функции и подфункции образуют иерархию. Программирование с учетом побочных эффектов и ссылок.
Объектно-ориентированная парадигма в C++ 2:55 В C++ объекты манипулируются с помощью стрелок. Программирование ориентировано на объекты, а не на процедуры. C++ остается популярным благодаря своей объектно-ориентированной парадигме.
Ассемблер и компиляция 4:07 Ассемблер используется для понимания компиляции программ на C и C++. Программы на C и C++ компилируются в ассемблерный код. Понимание процесса компиляции помогает в программировании на C++.
Параллельное программирование 6:34 Параллельное программирование позволяет выполнять функции одновременно. Пример с двумя банкоматами Wells Fargo иллюстрирует проблемы параллельного программирования. Важно обеспечить атомарность транзакций для предотвращения конфликтов.
Проблемы параллельного программирования 10:19 Неаккуратное программирование может привести к проблемам с целостностью данных. Банки и авиакомпании сталкиваются с проблемами, когда нужно предоставить ограниченное количество ресурсов. Параллельное программирование не всегда решает эти проблемы.
Введение в Scheme 11:00 После изучения параллельного программирования будет изучаться язык Scheme. Scheme относится к функциональной парадигме программирования. В отличие от C и C++, в Scheme нет побочных эффектов.
Преимущества Scheme 12:30 Scheme - простой и аккуратный язык для работы. Понимание функциональной парадигмы делает Scheme интересным и веселым. Преподавание Scheme требует времени и усилий, но приносит удовольствие.
Введение в Python 13:02 Python - популярный язык, особенно в крупных компаниях. Python можно рассматривать как более современную версию Perl. Python подходит для веб-программирования и распределенных систем.
Веб-программирование на Python 14:31 Веб-программирование сложнее, чем просто HTML. Python - язык сценариев, который интерпретируется и выполняет команды по мере ввода. Задание включает написание динамического веб-сервера на Python.
Преимущества Python 15:08 Python имеет отличные библиотеки и объектно-ориентированный синтаксис. Python позволяет использовать идеи функционального программирования. Python подходит для изучения парадигмы клиент-сервер и анализа XML и HTML.
Заключение 16:43 В будущем будут рассмотрены другие языки и парадигмы программирования. В пятницу будут раздаточные материалы и задание по низкоуровневым указателям C и C++. Пожелание хорошей недели и завершение лекции.