Найти в Дзене
Дивергент

Lifor. Структура проекта и посильные советы

Что ж. Лид настучал по голове за обилие колкостей в сторону проекта, поэтому их станет меньше... Пфффф, конечно, нет. Продолжаем наше шоу! Открывайте редакторы, IDE или что там у вас и начинаем. Как вы можете увидеть на картинке, директория(папка) нашего проекта состоит из 3 частей: папка с данными, наша библиотека(громкое название для пары классов) и главный файл main.py, который является стартом программы. Файл README.md я не трогаю, потому что он представляет собой только небольшое описание проекта Да, к слову, на момент последнего релиза в структуре проекта творится тихий ужас, так что рекомендую смотреть ветку develop-restruct. Собственно о ней речь и будет идти дальше В папке с данными лежат, как не удивительно, данные, обрабатываемые программой. Пока они собой представляют тип данных текстовички определённого формата. В кратце, очередной велосипед. Наверное, потом перейдём на что-то более подходящее, например xml или что-то подобное Про файлик main.py, думаю, и говорить не стои

Что ж. Лид настучал по голове за обилие колкостей в сторону проекта, поэтому их станет меньше... Пфффф, конечно, нет. Продолжаем наше шоу!

Открывайте редакторы, IDE или что там у вас и начинаем. Как вы можете увидеть на картинке, директория(папка) нашего проекта состоит из 3 частей: папка с данными, наша библиотека(громкое название для пары классов) и главный файл main.py, который является стартом программы. Файл README.md я не трогаю, потому что он представляет собой только небольшое описание проекта

Да, к слову, на момент последнего релиза в структуре проекта творится тихий ужас, так что рекомендую смотреть ветку develop-restruct. Собственно о ней речь и будет идти дальше

В папке с данными лежат, как не удивительно, данные, обрабатываемые программой. Пока они собой представляют тип данных текстовички определённого формата. В кратце, очередной велосипед. Наверное, потом перейдём на что-то более подходящее, например xml или что-то подобное

Про файлик main.py, думаю, и говорить не стоит. Вы его просто запускаете, и программа начинает свою работу

Библиотека

Самое интересное начинается здесь - за словом shedlib

структура библиотеки
структура библиотеки

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

Почему файл программы лежит тут? Это для удобства разработки. Гораздо понятнее, когда одна вещь отвечает за что-то конкретное. И с этим же принципом наша программа поделена на 5 составляющих: объект времени, набор объектов событий, объект для чтения данных, интерфейс и сама программа

Совет: организуйте библиотеку с самого начала проекта. Если вы присмотритесь к папкам, то увидите, что в каждой лежит файлик __init__.py, который и отвечает за работу библиотеки. С ним не нужно писать длиннющие строки импортов, поэтому не ленитесь и потратьте 5 минут своего времени, чтобы разобраться с этим удобным инструментом

Обзор каждого компонента с нюансами, которые у нас возникли, будет в дальнейшем выпуске. А на этом пока всё. Всем хорошего кода