В этой статье мы рассмотрим полезные фреймворки Python для создания игр и приложений для мобильных устройств. Некоторые из этих фреймворков также поддерживают десктопные приложения или работают как автономные инструменты для сборки как для десктопных, так и для мобильных устройств. Благодаря этому вы можете использовать одну кодовую базу (с небольшими изменениями) для развертывания приложений на различных устройствах.
Kivy
Kivy — это бесплатный фреймворк для создания приложений и игр. Имеет открытый исходный код. Kivy позволяет разрабатывать приложения и 2D-игры, совместимые с десктопными и мобильными устройствами. Лицензия фреймворка позволяет создавать приложения для коммерческих целей.
Основные особенности Kivy:
- поддержка мультитач-ввода,
- аппаратное ускорение графического интерфейса
- множество предопределенных GUI-виджетов
- пользовательские виджеты
- собственный уникальный язык дизайна «kv», подходящий для быстрого прототипирования
- возможность создавать пакеты для десктопных операционных систем и мобильных устройств, таких как Android и iOS.
Подробную документацию по Kivy можно почитать здесь. Kivy был разработан для многих дистрибутивов Linux. Его пакеты можно найти в дефолтных репозиториях с помощью диспетчера пакетов. Также вы можете получить последнюю версию Kivy, следуя инструкциям, доступным здесь.
BeeWare
BeeWare – еще один отличный бесплатный фреймворк с открытым исходным кодом, предназначенный для разработки приложений. По сути, он работает согласно концепции «написать один раз – развернуть везде». Вы можете использовать одну и ту же кодовую базу для создания и десктопных, и мобильных приложений.
Кроме того, приложения, разработанные с использованием BeeWare, хорошо интегрируются с разными платформами, сохраняя нативный внешний вид, характерный для платформы.
BeeWare также имеет довольно простые условия лицензирования, поэтому вы можете использовать его для коммерческих проектов.
Основные функции BeeWare включают:
- API для доступа к нативным виджетам графического интерфейса,
- API для доступа к библиотекам, специфическим для конкретных платформ
- возможность развертывания приложений на нескольких платформах.
Вы можете получить доступ к документации BeeWare здесь. Подробные инструкции по установке доступны здесь.
Pyqtdeploy
Pyqtdeploy, в отличии от Kivy и BeeWare, не является фреймворком для разработки приложений. Он предоставляет набор инструментов, позволяющих упаковать приложение PyQt для различных платформ, включая мобильные устройства.
Pyqtdeploy также может упаковывать приложения с графическим интерфейсом, CLI-приложения, а также библиотеки. Его также можно использовать для создания пакетов для Python-приложений , которые не используют библиотеки PyQt. Pyqtdeploy находится под лицензией BSD, что позволяет нам использовать его в коммерческих проектах.
Чтобы узнать больше о методах упаковки Pyqtdeploy и процессе развертывания, просмотрите онлайн-документацию, которая доступна здесь. Подробные инструкции по установке можно найти здесь.
Python-for-android
Python-for-android или p4a – это набор инструментов, которые можно использовать для создания Python-приложений для платформы Android.
Этот фреймворк имеет надежный набор инструментов для сборки, позволяющий создавать файлы «apk», которые вы можете опубликовать в Play Store.
Python-for-android в основном разрабатывался как упаковочная утилита для приложений Kivy. Однако теперь он значительно вырос и позволяет упаковывать и другие приложения на основе Python.
Основные функции Python-for-android включают поддержку создания пакетов для нескольких архитектур, рецепты сборки, поддержку упаковки приложений, разработанных с использованием библиотек SDL2, и многое другое.
Вы можете узнать больше о методах упаковки здесь. Инструкции по установке доступны здесь.
Ren’Py
Ren’Py – это ещё один бесплатный инструмент с открытым исходным кодом, который можно использовать для разработки визуальных романов как для компьютеров, так и для мобильных устройств (Android и iOS).
Основанный на Python, Ren’Py имеет графический инструмент управления проектами. Также в нем можно найти утилиты командной строки для разработки собственных игр. Более того, вы можете использовать данный инструмент для создания различных симуляторов и ролевых игр при помощи встроенной системы сценариев.
К другим основным функциям Ren’Py можно отнести API управления активами и API диалоговых скриптов. Кроме того, он поддерживает «мультитач», автосохранение и быструю перемотку вперед, перемотку и пропуск сцен, предопределенные и настраиваемые анимацию и переходы и т. д.
Официальная документация по Ren’Py доступна здесь. Вы можете установить его на свой компьютер, следуя инструкциям, которые можно найти здесь.
Заключение
Python – чрезвычайно универсальный язык программирования с огромной библиотекой встроенных модулей. Его можно использовать для разработки приложений практически под любой тип требований, для любой области. К сожалению, в сфере мобильной разработки Python не очень популярен. Здесь он не достигает тех высот, которые доступны другим языкам. Фреймворков Python для создания игр и мобильных приложений очень мало. Но все же они есть. И именно о них мы рассказали в сегодняшней статье.