📖 Зміст
Частина 1: Світ програмування навколо нас
Частина 2: Алфавіт і словник програмування
Частина 3: Будуємо перші програми
Частина 4: Наш дивовижний мозок
Частина 5: Творчі проекти
Частина 6: Програмування в реальному світі
Частина 7: Від електрики до штучного інтелекту
Глава 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. Ти перетягуєш блоки команд, з'єднуєш їх, і виходить програма!
— Схоже на гру, — посміхнулась Аліса.
— Програмування і має бути захоплюючим! — підморгнув Професор. — Багато професійних програмістів кажуть, що їхня робота — це як розв'язувати головоломки і створювати щось нове одночасно.