Введение в элементы исходного кода
Go известен своим простым и понятным синтаксисом. Далее мы рассмотрим общие элементы исходного кода в программировании на простом примере. Это поможет начинающим гоферам (программистам Go, то есть нам) получить общее представление об использовании элементов Go.
Элементы программирования и исходного кода
Программирование можно рассматривать как манипулирование операциями всевозможными способами для достижения определенных целей. Операции записывают данные и считывают данные с аппаратных устройств для выполнения задач. Для современных компьютеров элементарными операциями являются низкоуровневые инструкции CPU и GPU. Общие аппаратные устройства включают память, диск, сетевую карту, графическую карту, монитор, клавиатуру и мышь и т. д.
Программирование путем непосредственного управления низкоуровневыми инструкциями утомительно и чревато ошибками. Языки программирования высокого уровня вносят некоторую инкапсуляцию для низкоуровневых операций и некоторые абстракции для данных, чтобы сделать программирование более интуитивно понятным и удобным для человека.
В популярных языках программирования высокого уровня операции в основном выполняются путем вызова функций и использования операторов. Большинство популярных языков программирования высокого уровня поддерживают несколько видов условных и циклических потоков управления, мы можем думать о них как о специальных операциях. Синтаксис этих потоков управления близок к человеческому языку, поэтому код, написанный программистами, легко понять.
Данные абстрагируются как типы и значения в большинстве языков программирования высокого уровня. Типы можно рассматривать как шаблоны значений, а значения — как экземпляры типов. Большинство языков поддерживают несколько встроенных типов, а также поддерживают пользовательские типы. Система типов языка программирования — это дух языка.
В программировании может использоваться большое количество значений. Некоторые из них могут быть представлены своими литералами (текстовыми представлениями) напрямую, а другие нет. Чтобы сделать программирование гибким и менее подверженным ошибкам, многие значения имеют имена. К таким значениям относятся переменные и именованные константы.
Именованные функции, именованные значения, включая переменные и именованные константы, определенные типы и псевдонимы типов называются элементами кода. Имена элементов кода должны быть идентификаторами. Имена пакетов и имена импортируемых пакетов также должны быть идентификаторами.
Программный код высокого уровня будет транслироваться компиляторами в низкоуровневые инструкции ЦП для выполнения. Чтобы помочь компиляторам анализировать программный код высокого уровня, многие слова зарезервированы, чтобы предотвратить их использование в качестве идентификаторов. Такие слова называются ключевыми словами.
Многие современные языки программирования высокого уровня используют пакеты для организации кода. Пакет должен импортировать другой пакет, чтобы использовать экспортированные (общедоступные) элементы кода в другом пакете. Имена пакетов и имена импортируемых пакетов также должны быть идентификаторами.
Хотя код, написанный на языках программирования высокого уровня, более понятен, чем на машинных языках низкого уровня, нам все же нужны некоторые комментарии для кода, чтобы объяснить логику. Рассмотрим пример программы, которая содержит много комментариев, в следующей главе.