📖 Содержание
Часть 1: Мир программирования вокруг нас
Часть 2: Алфавит и словарь программирования
Часть 3: Строим первые программы
Часть 4: Наш удивительный мозг
Часть 5: Творческие проекты
Часть 6: Программирование в реальном мире
Глава 5 из 27
2: Алфавит и словарь программирования
Глава 5: "Языки общения с компьютерами"
Утром Алиса проснулась от странных звуков, доносившихся из гостиной. Когда она вышла из комнаты, то увидела Байта, который издавал серию пищащих звуков, а Профессор Бит, казалось, его понимал.
— Доброе утро, Алиса! — повернулся к ней Профессор. — Мы с Байтом как раз обсуждали тему нашего сегодняшнего урока — языки программирования.
— Вы говорили на языке роботов? — поинтересовалась Алиса, наливая себе апельсиновый сок.
— Что-то вроде того, — улыбнулся Профессор. — Байт говорил на языке, который называется "машинный код". Это самый низкоуровневый язык, на котором компьютеры общаются внутри себя.
Логик, сидевшая на книжной полке, расправила крылья:
— В мире существует более 700 языков программирования, и у каждого свои особенности и предназначение.
— Семьсот?! — удивилась Алиса. — Но зачем так много? Людям хватает гораздо меньше языков для общения.
Профессор сел за стол и показал Алисе своё планшет:
— Смотри, языки программирования создаются для разных целей, как и инструменты. Молотком хорошо забивать гвозди, но не очень удобно закручивать шурупы, верно?
Алиса кивнула.
— Так же и с языками программирования. Некоторые хороши для создания веб-сайтов, другие — для анализа данных, третьи — для управления роботами или создания игр.
На экране появилась красочная схема с разными языками программирования.

— Вот, например, Python, — указал Профессор на логотип со змеёй. — Это очень популярный язык, понятный для начинающих. На нём можно писать почти всё что угодно — от простых скриптов до сложных научных программ.
— А это JavaScript, — Профессор указал на другой логотип. — Он управляет большинством интерактивных элементов на веб-страницах.
— А на каком языке говорит Байт? — спросила Алиса.
— У Байта несколько языков, — ответил Профессор. — Его базовые функции написаны на C++, это очень быстрый и мощный язык. А для общения с нами он использует специальные библиотеки на Python.
Семьсот путей, семьсот дорог,
Семьсот сплетений точных строк.
Семьсот различных — про одно:
Как в цепь вплетается звено.
Для каждой цели — свой язык,
К которому творец привык.
Семьсот путей на высоту
Рождают в коде красоту.
Один, как флейта, ясен, чист,
Свободен, как летящий лист.
Другой — как молот, крепок, твёрд,
В расчётах точен, строг и горд.
Тот — архитектор важных дел,
Построить прочный свод сумел.
А этот — красочен и жив,
Как акварели перелив.
Вот страж табличной глубины,
Где ритмы строгие точны.
В бездонной памяти сетей —
Хранитель данных и ключей.
На разных языках народ
Творит симфонию из нот.
По-разному всё об одном:
Их код вплетается в геном!
— Профессор, а чем отличаются языки программирования от человеческих языков? — поинтересовалась Алиса.
— Отличный вопрос! — Профессор задумался на мгновение. — Главное отличие в том, что человеческие языки допускают неоднозначность и интерпретацию, а языки программирования должны быть абсолютно точными.
— Что это значит?
— Когда я говорю: "Подай, пожалуйста, эту штуку," — ты можешь понять из контекста, что я имею в виду. Если я покажу взглядом на пульт от телевизора, ты догадаешься, что нужно подать именно его. Но компьютер не умеет "догадываться". Если ты не укажешь точно, что нужно делать, он либо выдаст ошибку, либо сделает что-то не то.
Байт издал серию звуков, похожих на смех:
— Когда программисты пишут неточные инструкции, получаются забавные результаты! Однажды меня попросили "пойти направо, когда увидишь дерево". Я так и не сдвинулся с места, потому что не было указано, КАКОЕ дерево!
— Именно! — подхватил Профессор. — В программировании важна предельная точность. Компьютер выполняет именно то, что ты ему говоришь, а не то, что ты имеешь в виду.
Логик добавила:
— Человеческие языки эволюционировали тысячи лет, а языки программирования были специально созданы людьми для решения конкретных задач.
Профессор достал с полки несколько книг:
— Каждый язык программирования имеет свой синтаксис — набор правил, определяющих, как должны быть написаны команды. Это как грамматика в обычных языках.
Он открыл ноутбук и показал простую программу:
python
print("Привет, мир!")— Это программа на языке Python, — пояснил он. — Она выводит на экран фразу "Привет, мир!". А вот так же самое на языке JavaScript:
jsx
console.log('Привет, мир!');
— А вот на языке C++:
cpp
#include
int main() {
std::cout << "Привет, мир!" << std::endl;
return 0;
}— Видишь, как по-разному можно сказать одно и то же? — спросил Профессор.
— Да, Python выглядит проще всего, — заметила Алиса.
— Верно подмечено! — кивнул Профессор. — Python создавался с учётом удобочитаемости. Его часто рекомендуют для начинающих именно потому, что его код похож на обычный английский язык.
— А на каком языке мне стоит учиться программировать? — спросила Алиса.
— Для начала я бы рекомендовал что-то визуальное, например, Scratch, — ответил Профессор. — В нём программа собирается из блоков, как конструктор LEGO. Это помогает понять основные концепции программирования без необходимости запоминать синтаксис.
Байт вывел на свой экран красочный интерфейс Scratch:

— Смотри, так выглядит программа в Scratch. Ты перетаскиваешь блоки команд, соединяешь их, и получается программа!
— Похоже на игру, — улыбнулась Алиса.
— Программирование и должно быть увлекательным! — подмигнул Профессор. — Многие профессиональные программисты говорят, что их работа — это как решать головоломки и создавать что-то новое одновременно.