Открой для себя, что любая программа - это всего лишь текстовый файл, и почему это меняет твою манеру работать.
Открыть этот урок в KodokonВот открытие, которое удивляет почти всех: код - это просто текст. Не секретный формат, не какой-то загадочный двоичный файл. Сайт, приложение для телефона, видеоигра - всё начинается с файлов, которые ты мог бы открыть в Блокноте и прочитать символ за символом. Внутри нет ничего скрытого, и именно это делает программирование по-настоящему изучаемым.
Одна оговорка: речь идёт о простом тексте, а не о форматированном. Когда ты пишешь в Word, LibreOffice или Google Документах, файл хранит куда больше, чем твои буквы: шрифт, размер, цвета, поля - всё это невидимое оформление. Файл с кодом содержит только символы, по порядку, без единого украшения. Цвета, которые ты позже увидишь в редакторе, не лежат в файле: редактор добавляет их на экране, чтобы тебе помочь.
Настоящее содержимое файла index.html, символ за символом:
<h1>Hello</h1>
<p>My first page.</p>
Больше ничего. Ни шрифта, ни цвета, ни полей.А что же расширение, этот маленький суффикс после точки: .txt, .html, .py, .js? Это не более чем наклейка на коробке. Она ничего не меняет в содержимом. Она нужна, чтобы сообщать программам, и тебе самому, что файл должен содержать. Если переименовать photo.jpg в photo.txt, изображение не превратится в текст: содержимое останется прежним, просто наклейка соврала. И наоборот: один и тот же текст, сохранённый как page.txt или как page.html, - это строго один и тот же файл, но браузер покажет его как веб-страницу только во втором случае.
Отсюда следует ещё одно: никогда не пиши код в текстовом процессоре. Word и Google Документы автоматически правят то, что ты набираешь, и, в частности, подменяют прямые кавычки красивыми фигурными типографскими. Для тебя разница незаметна. Для машины это два совершенно разных символа, и твоя программа просто откажется работать.
Что ждёт машина "hello" прямые кавычки
Что пишет Word “hello” фигурные типографские кавычки
Ещё одна частая ловушка 'hello' -> ' становится фигурным апострофом.html?