Перейти к основному содержимому

5. Языки - о разделе


О разделе

Мы изучили, как пишут программы, теперь пора посмотреть, на чём пишут.

Язык программирования — это формальная знаковая система (набор правил, символов и слов), предназначенная для написания компьютерных программ и передачи инструкций компьютеру. Проще говоря, это мост и переводчик между человеком и микропроцессором, который позволяет превращать понятные нам логические команды в цепочки электрических сигналов.

Поскольку процессоры компьютеров понимают только «машинный код» (состоящий исключительно из нулей и единиц), человеку писать программы напрямую было бы невероятно тяжело. Специальные языки программирования позволяют писать понятные текстовые команды (например, if для условий, print для вывода текста), которые затем превращаются в машинный код с помощью специальных программ-трансляторов (компиляторов или интерпретаторов).

Как читать разделы языков

Общие идеи (компиляция, память, ООП, зависимости) — в "Код и разработка".

Краткие идиоматичные записи (обмен переменных, срезы, включения) — однострочные приёмы и шпаргалка для Python.

В вводных статьях языков сложные механизмы по возможности даются сначала на русском псевдокоде, затем — синтаксисом конкретного языка (блоки "Справочно на …"). На старте выберите один язык для старта, пройдите intro → первую программу — затем переходите дальше (фреймворк, смежный стек, второй язык). Не смешивайте на одной неделе правила владения, GC и типов разных языков. Обзор всех языков и выбор направления — Какой язык программирования выбрать.

Что используется для фронтенда, что для бэкенда — какие инструменты и технологии нужны в разных областях. Бэкенд-сервисы чаще упаковывают в контейнеры или ВМ — см. четыре модели развёртывания (это про инфраструктуру, а не про JVM).

Для учебных игр на коде без движка Unity/Unreal — Разработка игр на Python, короткие мини-игры Pygame с разбором, Minecraft — команды и datapack (Java Edition, без IDE) и сквозные проекты в Практикуме разработки игр (Python/Pygame, Java Survivors, Приключения Урала Батыра на TypeScript). Для Unity + C#курс в редакторе и готовые MonoBehaviour в Lab.

При изучении языка ИИ уместен для объяснений и черновика, но вайб-кодинг (копипаста без понимания синтаксиса и runtime) тормозит прогресс. Практика с проверкой — Генерация кода; про однотипный "пустой" вывод — нейрослоп.

Технически, языки по большей части универсальны. Они обычно появляются с определённой целью (JavaScript для оживления страниц, C/C++ для системного программирования, а Java чтобы обезопасить и упростить разработку), но в дальнейшем развиваются, получая новый функционал, новые фичи и возможности.

В интернете часто можно найти громкие заголовки вроде "Какой язык программирования выбрать?" И почти всегда вы встретите от года в год одно и то же - Python лучше всех, JavaScript и Java нужны везде, а C# никому не нужен. Но не всё так просто — разбор по задачам: Какой язык программирования выбрать.


Содержание