Рис. 1.22. Пример подсказки
Трансляция
Процесс преобразования исходной программы в выполняемую называется трансляцией. Во время трансляции исходная программа, то есть программа, записанная на языке программирования, преобразуется в выполняемую программу, представляющую собой последовательность двоичных чисел, кодирующих данные и команды процессора. Здесь следует обратить внимание на то, что, строго говоря, выполняемая программа, создаваемая транслятором C#, содержит не команды процессора, а некоторое промежуточное представление программы, которое в процессе запуска программы (загрузки программы в операционную память компьютера) преобразуется в команды процессора.
Процесс создания выполняемого файла С# программы может быть представлен как последовательность этапов предварительной обработки, компиляции и компоновки (рис. ).
Рис. Процесс создания выполняемого файла
Препроцессор выполняет предварительную обработку исходной программы. Он просматривает текст исходной программы и выполняет директивы, которые в ней находятся (директива – инструкция, начинающаяся символом #). Если с исходной программе директив препроцессору нет, то обработка не выполняется и текст программы передается компилятору без изменений.
Компилятор обрабатывает сформированную препроцессором программу: проверяет ее на наличие синтаксических и семантических. При обнаружении синтаксической ошибки, например, необъявленного идентификатора (переменной), выводится сообщение об ошибке. При обнаружении семантической ошибки, например переменной, которая объявлена, но в программе не используется, выводится предупреждение.
Если в программе нет синтаксических ошибок, то запускается процесс компоновки. Компоновщик собирает выполняемую программу – добавляет к сформированному компилятором коду код других модулей.
Чтобы активизировать процесс создания выполняемого файла, надо в меню Сборка выбрать команду Собрать решение. Если в программе ошибок нет, то в окно Вывод будет выведено сообщение об успешном завершении процесса сборки (рис . ).
Рис. Пример сообщения об успешной сборке программы
Если в программе есть ошибки, то выводится сообщение об ошибках, предупреждения и информация о неудачном завершении процесса сборки (рис. ).
Рис. Пример сообщения о неуспешной сборке программы