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

Первая программа на Julia

Разработчику Архитектору Инженеру

Play ITЗагрузка интерактивного демо…


Первая программа

Где применяют Julia

Julia сочетает удобство скриптового языка с скоростью, близкой к C, за счёт JIT-компиляции. Научные вычисления, ML, дифференциальные уравнения; синтаксис знаком математикам (^, матрицы).

Первая программа — REPL julia>, println("Hello").

Если вы только входите в разработку, можно думать так: Julia позволяет писать "по-человечески", но исполнять "по-инженерному быстро". Поэтому первый шаг тут такой же простой, как в других языках, но очень быстро можно перейти к более тяжёлым задачам.


Установка Julia

Первый шаг — установка самого языка. Julia распространяется бесплатно и поддерживает все основные операционные системы: Windows, macOS и Linux. Официальный сайт проекта — https://julialang.org. На главной странице сайта находится кнопка Download, ведущая на страницу с актуальными версиями.

Актуальную стабильную версию смотрите на странице загрузки (на момент подготовки материала часто фигурировала линейка 1.10.x). Скачивание — готовый установочный пакет:

  • Windows: файл с расширением .exe (обычно Julia-1.10.x-win64.exe). Запуск установщика требует прав администратора только если выбрана установка для всех пользователей. Можно установить Julia в личную папку без административных привилегий.
  • macOS: образ диска .dmg, внутри которого находится приложение Julia-1.10.app. Его достаточно перетащить в папку Applications.
  • Linux: архив .tar.gz или пакеты через менеджеры вроде apt (для Ubuntu/Debian) или dnf (для Fedora). Например, для Ubuntu можно добавить официальный репозиторий:
sudo apt install julia

После установки Julia доступен через командную строку. В терминале (или PowerShell на Windows) достаточно ввести команду:

julia

Если всё сделано правильно, откроется интерактивная среда REPL (Read-Eval-Print Loop) с приглашением вида julia>. Это означает, что Julia успешно установлена и готова к работе.


Выбор среды разработки

Julia не требует обязательного использования интегрированной среды разработки (IDE), но для комфортной работы рекомендуется выбрать один из следующих вариантов.


1. VS Code с расширением Julia

Visual Studio Code — наиболее популярный выбор среди разработчиков Julia. Microsoft активно поддерживает язык, и официальное расширение Julia от команды разработчиков Julia предоставляет:

  • Подсветку синтаксиса
  • Автодополнение кода
  • Интеграцию с REPL
  • Отладчик
  • Возможность запуска отдельных строк или блоков кода
  • Визуализацию переменных и графиков прямо в редакторе

Установка:

  1. Скачать и установить VS Code с https://code.visualstudio.com.
  2. Открыть VS Code, перейти во вкладку Extensions (Ctrl+Shift+X).
  3. Найти расширение Julia (автор — Julia Computing).
  4. Установить его и перезапустить редактор.

После этого при открытии файла с расширением .jl автоматически активируется поддержка Julia. При первом запуске расширение может предложить установить дополнительные компоненты — следует согласиться.


2. Jupyter Notebook с ядром IJulia

Для тех, кто работает с данными, машинным обучением или предпочитает интерактивные записные книжки, подходит Jupyter. Julia интегрируется в Jupyter через пакет IJulia.

Установка:

  1. Убедиться, что установлен Python и Jupyter (pip install jupyter).
pip install jupyter
  1. Запустить Julia REPL.
  2. Выполнить:
using Pkg
Pkg.add("IJulia")
  1. После установки запустить:
using IJulia
notebook()

Это откроет браузер с интерфейсом Jupyter, где можно создавать новые ноутбуки с ядром Julia.


3. Встроенная REPL

Для простых экспериментов или обучения достаточно стандартной REPL:

julia

REPL поддерживает многострочный ввод, историю команд, справку по функциям (через ?имя_функции) и базовый режим отладки.


Создание первой программы

Теперь перейдём к написанию самой первой программы. Традиционно это вывод фразы Hello, World! на экран.


Шаг 1. Создание файла

Откройте текстовый редактор или выбранную IDE. Создайте новый файл и сохраните его с расширением .jl, например, hello.jl.


Шаг 2. Написание кода

Внутри файла напишите одну строку:

println("Hello, World!")

Функция println — это стандартная функция Julia для вывода текста с последующим переходом на новую строку. Аргумент передаётся в круглых скобках и заключён в двойные кавычки, так как это строковый литерал.

Это минимальная корректная программа на Julia. Она не содержит объявления функций main, не требует импорта модулей и не зависит от внешних библиотек.


Шаг 3. Сохранение

Сохраните файл. Убедитесь, что он находится в удобной для вас директории, например, в папке Projects или Julia.


Запуск программы

Существует несколько способов выполнить программу.


Способ 1. Через терминал

В каталоге с hello.jl:

julia hello.jl

На экране появится:

Hello, World!

Это самый прямой и универсальный способ запуска скриптов Julia.


Способ 2. Через REPL

Можно запустить Julia REPL, а затем выполнить команду:

include("hello.jl")

Функция include загружает и выполняет содержимое указанного файла. Путь к файлу может быть относительным или абсолютным.


Способ 3. Через VS Code

Если используется VS Code с расширением Julia:

  1. Откройте файл hello.jl.
  2. Нажмите сочетание клавиш Ctrl+Enter (или Cmd+Enter на macOS) на строке с кодом — она выполнится в интегрированном REPL.
  3. Или нажмите правой кнопкой мыши в любом месте файла и выберите Execute File in REPL.

Результат появится в нижней панели VS Code.


Что происходит при запуске

Когда вы вызываете julia hello.jl, среда выполнения Julia делает следующее:

  1. Читает файл и строит AST (абстрактное синтаксическое дерево).
  2. Для каждого выражения при необходимости JIT-компилирует методы в машинный код (через LLVM).
  3. Выполняет скомпилированный код (первый прогон функции может быть медленнее из‑за компиляции).
  4. Выводит результат в стандартный поток вывода (stdout).

Julia не требует явного объявления точки входа, как C, C++ или Java. Любой код на верхнем уровне файла выполняется при загрузке. Для скриптов иногда добавляют:

if abspath(PROGRAM_FILE) == @__FILE__
main()
end

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


Дополнительные замечания для новичков

  • Регистр важен: Println не сработает — только println.
  • Кавычки: строки в Julia обязательно заключаются в двойные кавычки. Одинарные кавычки используются для символов ('a' — это символ, а не строка).
  • Пробелы и отступы: Julia не чувствителен к пробелам в начале строки, но соблюдение стиля улучшает читаемость.
  • Комментарии: начинаются с символа #. Например:
# Это комментарий — он игнорируется при выполнении
println("Hello, World!") # Можно писать и в конце строки

Расширение первой программы

После успешного запуска можно немного усложнить задачу. Например, запросить имя пользователя и поприветствовать его лично:

print("Введите ваше имя: ")
name = readline()
println("Привет, $name!")

Здесь:

  • print выводит текст без перевода строки.
  • readline() считывает строку, введённую пользователем.
  • $name — это интерполяция переменной внутрь строки. Julia подставит значение переменной name в указанное место.

Запуск этой программы в терминале покажет:

Введите ваше имя: Алексей
Привет, Алексей!

Этот пример демонстрирует базовое взаимодействие с пользователем и работу со строками — фундаментальные навыки любого программиста.


Окружение проекта

Для зависимостей создайте папку проекта и зафиксируйте пакеты в Project.toml / Manifest.toml:

using Pkg
Pkg.activate(".") # текущая папка — окружение проекта
# в REPL после ] — add DataFrames
Pkg.status()

Так воспроизводится один и тот же набор версий на другой машине. Подробнее про модули и пакеты — в основах.


Частые ошибки

СимптомПричина
julia не найденНе добавлен в PATH после установки
Медленный первый вызовJIT компилирует функцию — повторите вызов
MethodErrorНет метода для типа аргумента

Что попробовать

  1. 1:10 и sum(1:10) в REPL.
  2. @time перед тяжёлой функцией — замер после JIT.
  3. Пакет Plots — первый график.

Что читать сразу после "Hello, World!"

Чтобы первая программа не осталась одноразовым упражнением:

  1. Пройдите Основы языка и повторите блок про REPL и массивы.
  2. Прочитайте Типы и диспетчеризацию, чтобы понять MethodError.
  3. Закрепите Функции и макросы на маленьких функциях и @time.

Так вы быстро переходите от "просто запускаю файл" к "понимаю, как язык ведёт себя под нагрузкой".


Мини-чеклист после первой программы

  • Julia запускается из терминала командой julia.
  • Скрипт выполняется командой julia hello.jl.
  • Понимаете разницу между print и println.
  • Понимаете, почему первый вызов функции может быть медленнее.
  • Умеете установить пакет через Pkg.

Если хотя бы два пункта пока неуверенные — это нормально, просто повторите шаги из этой статьи в чистой папке проекта.


Типичные ошибки старта

  • Пропущен PATH после установки на Windows.
  • Запуск кода в глобальной области и удивление "почему медленно".
  • Перепутаны одинарные и двойные кавычки для строк.
  • Попытка сразу подключить много пакетов без базовой проверки окружения.

Хорошая стратегия: сначала стабильный "hello + ввод + запуск + Pkg", затем уже переход к более сложным темам.


В подборках

Статья входит в тематические подборки и блок "С чего начать?" на главной. Соседние шаги того же маршрута:

Первые шаги (маршрут подборки) — Первая программа на R, Первая программа на Bash, Первая программа на Dart, Первая программа на PowerShell, Первая программа на Nim, Первая программа на 1С.