Учет семян

Java (11), JavaFX (Многодокументный интерфейс с вкладками), СУБД Apache Derby

Идея создания такого приложения полностью принадлежит моей жене. Она, в качестве хобби, выращивает помидоры, перцы (это её любимое) и прочие растения. Покупает пакетики с семенами и выращивает по несколько кустов каждого сорта. Часто семена из пакетика остаются, часто сорт покупается, но посадить их в этом сезоне не получается. Мы же программисты, а не фермеры, и площадь для выращивания помидоров у нас очень небольшая.

Так вот, пакетиков с семенами набралось уже несколько тысяч, и они требуют компьютерного учёта. Использовать электронную таблицу не получается: только фото растений занимают более 10 Гб. Электронная таблица с этим справляется, но очень медленно работает. Вот она и придумала программу, которая поможет вести учёт этих тысяч пакетиков.

А мне нужно попрактиковаться с БД (Apache Derby), попробовать разработку нового типа UI (Многодокументный интерфейс с вкладками), попробовать новый пакет (JavaFX) и придумать, как сделать такую программу, уложившись в несколько тысяч строк. При этом лаконичность кода программы не должна достигаться за счёт упрощения UI и необходимой функциональности.

Для разработки использован Eclipse. Проект расположен здесь: https://github.com/weekend-game/seedskeeper/ (EN) и здесь: https://gitflic.ru/project/weekend-game/seedskeeper/ (RU).

Как запустить программу

Скачайте репозиторий на свой компьютер. Всё необходимое для работы программы расположено в папке app. Зайдите в папку app и запустите программу двойным кликом по SeedsKeeper.jar или, если она не запускается, двойным кликом по SeedsKeeper.bat. Если и последнее не запускает программу, то скачайте и установите Java 11 или новее и снова попробуйте способы, описанные выше.

Как открыть проект в Eclipse

В Eclipse, в меню выберите File - Import... В появившемся окне выберите Existing Projects into Workspace. Укажите папку скачанного вами репозитория и нажмите кнопку Finish. Проект откроется в Eclipse. В Package Explorer (в левой части экрана) дважды кликните на файле SeedKeeper.java. Файл откроется для редактирования (в центральной части экрана). Запустите программу на выполнение, нажав Ctrl+F11 или так, как вам удобно запускать программы в Eclipse.

Должен отметить, что в этом проекте понадобятся несколько библиотек сторонних разработчиков. Поэтому я решил создать не просто Eclipse-проект, а Maven-проект. Вообще-то проект уже создан, и ничего больше создавать не нужно, разве что для какого-то нового проекта. Но на всякий случай опишу.

Как создать Maven-проект в Eclipse

Выберите в меню File – New – Maven Project. Появится окно New Maven Project.

Установите флажок "Create a simple project (skip archerype selection)".

Снимите флажок "Use default Workspace location" и укажите в поле "Location" папку проекта. Например: C:\Dropbox\Weekend game\SeedsKeeper (На момент создания проекта его пака уже должна быть создана). Нажмите кнопку "Next".

На следующей странице укажите:

	Artifact Id: SeedsKeeper
	Version: 0.1.0
	Packaging: jar
	Name: SeedsKeeper
	Description: Accounting of seeds

Нажмите кнопку "Finish".

В папке C:\Dropbox\Weekend game\SeedsKeeper будут размещены файлы проекта.

Eclipse создаёт проект для Java 8. Во всяком случае, у меня было именно так. Чтобы использовать Java 11, следует открыть окно свойств проекта и на странице "Java Build Path" на вкладке "Libraries" удалить строку "JRE System Library [JavaSE-1.8]". Справа нажмите кнопку Add library..., выберите JRE System Library, нажмите радиокнопку Execution environment и укажите нужную версию "Java (11.0.10)". Затем следует добавить в файл pom.xml все необходимые зависимости.

    <dependencies>
        <dependency>
            <groupId>org.openjfx</groupId>
            <artifactId>javafx-controls</artifactId>
            <version>11.0.2</version>>
        </dependency>

        ...

    </dependencies>