Содержание
- Время сборки
- Время выполнения
- Разница
- Ошибки времени компиляции
- Катастрофические ошибки времени выполнения
- Логические ошибки времени выполнения
Как работает компьютерная программа, остается загадкой для обычного пользователя, который доверяет работе программистов. Программист должен понимать, как компьютер ожидает получить команды на двух этапах выполнения (время компиляции и время выполнения), в дополнение к другим концепциям.
Время сборки
Первый этап выполнения программы, время компиляции, включает перевод языка, понятного людям, или «исходного кода», на язык, который понимает компьютер, или «машинный код». Исходный код содержит слова, которые вы знаете, числа в десятичном формате и организованные структуры, которые упрощают понимание последовательности инструкций. Временной шаг компиляции завершается, когда новая программа представляет собой исполняемый файл.
Время выполнения
Компьютер использует инструкции, созданные во время компиляции, для запуска программы. Во время выполнения компьютер считывает перевод исходного кода для выполнения задач, заложенных программистом. Каждый раз, когда кто-то запускает программу, он делает это во время выполнения.
Разница
Время компиляции пересекается только один раз для преобразования исходного кода в исполняемый файл, который можно вызывать столько раз, сколько необходимо, без повторной компиляции, если только программа не требует изменений. Большинство пользователей используют только среду выполнения.
Ошибки времени компиляции
Ошибки могут возникать на обоих этапах выполнения программы. В исходном коде существуют ошибки времени компиляции или синтаксические ошибки. Примерами этого являются команды с ошибками, проблемы в порядке выполнения операций, несовместимые комбинации типов переменных и пропуски необходимых элементов. Программист может легко обнаружить ошибки времени компиляции, потому что они синтаксические, а не логические. Компилятор обычно находит ошибку времени компиляции и объясняет или дает советы по ее устранению. Если компилятор создает исполняемый файл из кода, программа не имеет ошибок времени компиляции.
Катастрофические ошибки времени выполнения
Ошибки времени выполнения могут вызвать сбой программы и преждевременное завершение работы. Примеры таких ошибок - доступ к ограниченной памяти и деление на ноль. Оператор «x / y» синтаксически верен, но если «y» содержит значение 0 во время выполнения, программа завершится ошибкой. Программист может столкнуться с трудностями при поиске ошибок времени выполнения из-за того, что они обычно возникают при определенных условиях.
Логические ошибки времени выполнения
Логическая ошибка не приводит к сбою программы, но заставляет ее работать так, как этого не хочет программист. Рассмотрим программу с меню опций, которая ожидает, что пользователь введет желаемый номер опции. Если пользователь набирает букву, программа, ожидая числа, может преобразовать его в числовое значение и отправить пользователя к одному из вариантов, выглядя так, как будто все в порядке, вместо того, чтобы сообщить, что пользователь ввел недопустимый вариант.