Программа
Программа может быть описана как некий набор инструкций, который говорит компьютеру, что делать. Подобно тому как инструкция говорит, что делать в определённой ситуации, программа говорит компьютеру, как выполнять определённую задачу или решать определённую проблему.
Инструкции
Набор инструкций в программе это как пошаговый рецепт блюда, но намного подробней. Можно дополнить рецепт бутерброда с вареньем чтобы компьютеру было понятней что необходимо сделать. Вот только некоторые из дополнений:
- Где найти хлеб и варенье?
- Что делать если варенье испортилось?
- На какую часть хлеба надо намазывать варенье?
- Как понять что варенья достаточно на хлебе?
Как видно из этих вопросов их может быть очень много и абсолютно в разных стилях написаны. Благодаря жизненному опыту человек может понять что фразы «варенье лежит в шкафу» и «варенье хранится в шкафу» одинаковые — человек знает что такое синонимы. Компьютер же обучен ограниченному количеству конструкций, но их достаточно чтобы описать программу абсолютно любой сложности и базовых конструкций всего 6 штук:
- Переменные
- Структуры данных
- Операторы
- Условные выражения
- Циклы
- Функции
Конструкции языка
Конструкции в языках программирования это основные строительные блоки, из которых составляются программы. Давайте представим, что вы строите что-то с помощью конструктора или строительного набора. Каждый элемент набора выполняет определенную функцию и соединяется с другими элементами для создания конечного продукта.
Переменные
Можно представить переменные как определенное место на складе, где хранится какая-нибудь вещь. Каждое место на складе имеет свое название или номер. Ты можешь положить на это место что угодно и запомнив название места вернуться к нему позже и то что ты там оставил все еще будет там лежать.
Структуры данных
Структуры данных похожи на переменные, но это более организованный, специализированный способ хранения данных. Если переменная это место на складе, то структура данных это как небольшой склад для похожих данных и инструментов работы с ними. Например, кухня это структура данных — в ней хранятся продукты и инструменты для готовки.
Операторы
Операторы похожи на действия которые мы применяем к вещам в повседневной жизни. Например, намазать варенье на хлеб или проверить что варенье не испортилось. В программировании это обычно символ или слово которое используется для выполнения определенных действий над данными.
Условные выражения
Эти конструкции применяются когда программе надо принять решение в зависимости от ситуации — ответить на вопрос. Это развилка в коде позволяет подстраиваться программе под различные ситуации. Компьютер понимает только вопросы на которые можно ответить «да» —
1
или «нет» — 0
.Циклы
Циклы похожи на механизм, который повторяет определённые действия несколько раз. Это как если бы вы делали одно и то же действие снова и снова, пока не выполнится определённое условие. Например, намазывать варенье на хлеб пока не будет «достаточно»
Функции
Функция это сохраненный набор инструкций который можно применить в разных ситуациях. Например, у тебя есть готовая инструкция как сходить в магазин и купить какой-нибудь продукт — «Сходить в магазин за ...». Она знает как добраться до магазина, как найти товар, как оплатить его и принести домой. Таким образом можно отправить компьютер в магазин если в процессе приготовления бутерброда он не нашел хлеб или варенье — не надо будет каждый расписывать как сходить в магазин за хлеб и как сходить за вареньем, вместо этого можно просто написать «Сходить в магазин за хлебом» или «Сходить в магазин за вареньем».
Используя эти базовые конструкции можно объяснить компьютеру как сделать все что угодно.