компиляторов | edX
Доступна одна сессия:
30 436 уже зарегистрированы!
Начало 24 марта
Завершение 31 августа
Регистрация
Я хочу получать электронные письма от StanfordOnline и узнавать о других предложениях, связанных с компиляторами.
Об этом курсе
Чему вы научитесь
Преподаватели
Как пройти этот курс
edX для бизнеса
10 недель
5–10 часов в неделю
Самостоятельный
Прогресс на вашей собственной скорости
БЕСПЛАТНО
Дополнительное обновление. от StanfordOnline и узнайте о других предложениях, связанных с компиляторами.
Компиляторы
Лекции курса будут представлены в коротких видеороликах. Чтобы помочь вам усвоить материал, в лекциях будут вопросы, на которые нужно ответить, викторины и два экзамена: промежуточный и итоговый. Также будет домашнее задание в виде упражнений, в которых вас попросят показать последовательность логических шагов, необходимых для получения определенного результата, например, последовательность шагов, которые программа проверки типов должна выполнить для проверки типов фрагмента кода, или последовательность действий. шаги, которые синтаксический анализатор должен выполнить для анализа входной строки. Эта технология проверки является результатом продолжающихся в Стэнфорде исследований по разработке инновационных инструментов для образования, и мы рады стать первым курсом, который сделал ее доступной для студентов.
Необязательный проект курса — написать полный компилятор для COOL, объектно-ориентированного языка для занятий в классе. COOL обладает основными характеристиками реалистичного языка программирования, но он достаточно мал и прост, чтобы его можно было реализовать в нескольких тысячах строк кода. Учащиеся, выбравшие проект, могут реализовать его либо на C++, либо на Java.
Надеюсь, вам понравится курс!
Краткий обзор
- Язык: английский
- Расшифровка видео: английский
Все, что делают компьютеры, является результатом некоторой программы, и все миллионы программ в мире написаны на одном из многих тысяч языков программирования, разработанных с 1950-х годов. Разработка и реализация языка программирования оказывается сложной задачей; некоторые из лучших умов в области информатики размышляли над связанными с этим проблемами и добились прекрасных и глубоких результатов. Изучение компиляторов покажет вам взаимодействие теории и практики в компьютерных науках, особенно то, как мощные общие идеи в сочетании с инженерным пониманием могут привести к практическим решениям очень сложных проблем. Знание того, как работает компилятор, также сделает вас лучшим программистом и повысит вашу способность быстро изучать новые языки программирования.
Выберите путь при регистрации.
$199 USD | Free | |
Unlimited | Limited Expires on Jun 2 | |
о часто задаваемых вопросах по этим трекам.
Компиляторы | Курс | Стэнфорд Онлайн
SOE-YCSCS1
Стэнфордская инженерная школа
В этом курсе для самостоятельного изучения будут обсуждаться основные идеи, используемые сегодня при реализации компиляторов языков программирования, включая лексический анализ, синтаксический анализ, синтаксически-ориентированный перевод, абстрактные синтаксические деревья, типы и проверку типов, промежуточные языки, анализ потоков данных, оптимизацию программ, генерация кода и системы времени выполнения. В результате вы узнаете, как программа, написанная на языке высокого уровня, предназначенном для людей, систематически транслируется в программу, написанную на низкоуровневом ассемблере, более подходящем для машин. Попутно мы также коснемся того, как устроены языки программирования, семантики языков программирования и почему существует так много разных языков программирования.
Лекции курса будут представлены в виде коротких видеороликов. Чтобы помочь вам усвоить материал, в лекциях будут вопросы, на которые нужно ответить, викторины и два экзамена: промежуточный и итоговый. Также будет домашнее задание в виде упражнений, в которых вас попросят показать последовательность логических шагов, необходимых для получения определенного результата, например, последовательность шагов, которые программа проверки типов должна выполнить для проверки типов фрагмента кода, или последовательность действий. шаги, которые синтаксический анализатор должен выполнить для анализа входной строки. Эта технология проверки является результатом продолжающихся в Стэнфорде исследований по разработке инновационных инструментов для образования, и мы рады стать первым курсом, который сделал ее доступной для студентов.
Необязательный проект курса — написать полный компилятор для COOL, объектно-ориентированного языка для занятий в классе. COOL обладает основными характеристиками реалистичного языка программирования, но он достаточно мал и прост, чтобы его можно было реализовать в нескольких тысячах строк кода.