Компоновка приложения из фрагментов методом соглашения имен

В базовом модуле приложения на языке Python всегда создается базовый класс, при этом используется зарезервированный шаблон имени – Class_nameApp. Модуль с деревом виджетов на языке KV так же имеет зарезервированный шаблон имени – class_name.kv. В этом случае базовый класс Class_nameApp ищет kv-файл с тем же именем, что и имя базового класса, но в нижнем регистре и без символов App. Например, если базовый класс приложения имеет имя – «My_ClassApp», то файл с кодом на языке KV должен иметь имя «my_class.kv».

Если такое совпадение имен обнаружено, то программный код, содержащийся в этих двух файлах, будет объединен в одно приложение.

Демонстрация метода соглашения имен (главный модуль приложения, модуль: Naming_conventions.py

from kivy.app import App
class MyApp(App): # определение базового класса
    pass
MyApp().run() # запуск приложения

В этом модуле просто создан базовый класс MyApp, внутри которого нет выполнения каких либо действий. Теперь создадим файл с именем my.kv и размести в нем следующий код:

Текстовый файл, модуль: my.kv

# файл my.kv
Label:
    text: "Метка из файла my.kv"
    font_size: '16pt'

В этом коде мы создали метку (Label), и свойству метке (text) присвоили значение – «Метка из файла my.kv», указали размер шрифта, которым нужно вывести на экран данный текст – '16pt'. Теперь запустим наше приложение и получим следующий результат:

Здесь сработал метод соглашения имен, который работает следующим образом: