- Из переданной работы переносится:
- каталог с исходными кодами
src
- файл разрешённых настроек
build.properties.json
- Все остальные файлы из исходных кодов работы не берутся
Рекомендуемый процесс разработки
#
- Получить шаблон с сайта
- Открыть в среде разработки и убедиться в его базовой работоспособности
- При желании изменить точку входа в приложение
- При необходимости расширить список зависимостей приложения
Примечания
- Пункты 3 и 4 выполняются путём редактирования файла
build.properties.json
- После его редактирования конфигурацию Gradle необходимо перезагрузить в среде
разработки
- Не надо редактировать другие файлы конфигурации Gradle, эти изменения не будут
применены во время проверки работы и скорее всего приведут к невозможности
проверки
Структура файла build.properties.json
#
{
"mainClass": "ru.yarsu.MainKt",
"dependencies": [
"com.fasterxml.jackson.module:jackson-module-kotlin:2.22.2",
"com.jsoizo:kotlin-csv:2.0.0"
]
}
- В свойстве
mainClass указывается полный путь к стартовому классу или
Kotlin-пакету приложения
- В примере указан класс
ru.yarsu.MainKt: функция main верхнего
уровня объявлена в файле Main.kt внутри пакета ru.yarsu
- В свойстве
dependencies указывается список Maven-пакетов с библиотеками
- Необходимую библиотеку можно найти на https://mvnrepository.com/
- Первая зависимость позволяет взаимодействовать с JSON-документами
- Вторая зависимость предоставляет классы для работы с CSV-документами
Запуск приложения с аргументами
#
Запуск приложения выполняется задачей Gradle run. Аргументы командного
интерфейса передаются ключом --args:
./gradlew run --args="../data/triangles.csv RED"
Значение ключа --args передаётся приложению целиком как массив args в
функции main. Аргументы, содержащие пробелы, указываются в кавычках:
--args='file with spaces.csv'.
Отправка архива
#
Архив, отправляемый на проверку, должен удовлетворять следующим требованиям:
- После распаковки его содержимое сразу можно использовать для разработки
- Архив содержит все необходимые файлы для автоматизированной системы проверки
- Архив не содержит результаты сборки, локальные кэши и локальные параметры IDE
Подобный архив можно создать с помощью задачи Gradle ExportDistZip:
Данная задача создаст Zip-архив в каталоге build/distributions/, в который войдут
необходимые для сдачи файлы
Содержимое архива
#
Исходные коды в архиве, созданном задачей ExportDistZip, подходят для:
- Отправки в систему проверки работы приложения
- Использования для защиты лабораторной работы в университете
В архиве находятся:
- Исходные коды приложения, каталог
src
- Файлы конфигурации системы сборки Gradle и плагинов
- Список зависимостей приложения в файле
build.properties.json
- Настройки статического анализатора ktlint
- Каталог для хранения данных приложения
data