Документация
Уроки Открыть IDE
На главную
Урок 23

Создание собственных библиотек

Как разбить программу на несколько файлов, чтобы не запутаться в коде

Зачем нужны библиотеки?

Когда программа становится больше — в ней появляются десятки, а то и сотни функций. Держать всё в одном файле — как хранить весь гардероб в одной куче на полу: можно, но неудобно и неразумно.

Библиотеки позволяют разбить код на логические части и использовать их по мере необходимости.

Принцип работы

В Idyllium проект может состоять из:

  • Главного файла — с функцией main(), откуда начинается выполнение;
  • Вспомогательных файлов — с функциями, которые можно переиспользовать.

Каждый вспомогательный файл — это собственная библиотека.

Пример: отделение логики вывода от основной программы

Файл draw.idyl — содержит только функции для рисования линий:

Файл main.idyl — использует эту библиотеку:

Теперь логика рисования отделена от основной программы — и её можно использовать в других проектах!

Как подключать собственные библиотеки?

Синтаксис прост:

Если вы создали файл math_tools.idyl, то подключать его нужно так:

Idyllium автоматически найдёт файл с расширением .idyl и загрузит оттуда все функции.

Где должны лежать файлы?

Файлы проекта должны находиться в одной папке:

  • Projects/main.idyl и Projects/draw.idylработает;
  • Images/main.idyl и Videos/draw.idylне работает.

Иными словами: главный файл может подключить только те библиотеки, которые лежат рядом с ним или являются системными (вроде console, math, random).

Это правило защищает от хаоса в файловой системе и делает проекты самодостаточными: весь код — в одной папке, нет скрытых зависимостей.

Преимущества разбиения на библиотеки

  • Читаемость — в main.idyl остаётся только логика программы, а вспомогательные функции — в отдельных файлах;
  • Повторное использование — библиотеку draw.idyl можно скопировать в другой проект и сразу использовать;
  • Командная работа — один человек пишет рисовалку, другой — логику игры, и они не мешают друг другу;
  • Отладка — если что-то сломалось в draw.line(), вы знаете, где искать — не во всём проекте, а в одном файле.

И напоследок: системные vs собственные библиотеки

Синтаксис одинаков — разница только в происхождении:

Для Idyllium — это одно и то же. А для вас — это инструмент управления сложностью.