- Запустить первую программу на Java в профессиональном редакторе кода Intellij Idea.
- Проанализировать результат работы кода, найти дефект(ы).
- Научиться версионировать проект с помощью Git.
- Попрактиковаться в написании баг-репортов в GitHub Issue.
- Скачайте и установите профессиональный редактор кода Intellij Idea Community Version.
- Откройте IDEA и создайте новый Java-проект.
- Создайте пустой репозиторий на GitHub и свяжите его с папкой вашего проекта (не с какой-либо другой папкой).
- Правильно настройте репозиторий в плане
.gitignore
. Проигнорируйте папки.idea
иout
и.iml
-файл — их в репозитории быть не должно. - Выполните в IDEA задачу согласно условию.
- Закоммитьте и отправьте в репозиторий содержимое папки проекта.
- Создайте баг-репорт в вашем репозитории на основе GitHub Issues, оформив его в точности по образцу из задания.
Ваша задача — проанализировать программу расчёта распределения ингредиентов на порцию. Программе на вход даётся рецепт с количеством каждого ингредиента, а также количество человек, которые будут в одинаковых порциях его есть. На выходе программа указывает без округлений, какое точное количество каждого ингредиента пришлось на одну порцию еды.
public class Main {
public static void main(String[] args) {
int eaters = 5; // сколько людей будут есть
int water = 3000; // миллилитров воды
int potatoes = 5; // картофелин
int chicken = 6; // куриных бёдер
int spices = 10; // ложек специй
System.out.println("Сварили суп. На одного человека вышло:");
System.out.println((water / eaters) + " миллилитров(а) воды");
System.out.println((potatoes / eaters) + " картофелин(а/ы)");
System.out.println((chicken / eaters) + " куриных(ое) бёдер(ро)");
System.out.println((spices / eaters) + " ложек(ки/ка) специй");
}
}
Для анализа этой программы
- Установите бесплатную версию идеи (Community version) с официальной страницы.
- Создайте новый проект на основе Java 11.
- Создайте класс
Main
с содержимым из кода выше. - Нажмите на кнопку запуска программы. Она должна запуститься, вывести информацию на экран и завершиться.
- Закоммитьте и запушьте ваш проект в публичный репозиторий на GitHub. Не забудьте правильно его настроить в плане игнорирования ненужных файлов.
- Проанализируйте код и вывод программы. Найдите в ней дефект. Менять как-либо код программы нельзя.
- Оформите баг-репорт с помощью GitHub Issues, описывающий найденный дефект по шаблону из примера ниже.
Наша цель — получить баг-репорт, оформленный в точности как в этом примере:
Баг-репорт из примера выше получается заполнением следующим markdown-текстом:
Комментарии к формату
- И в .md-файлах, и внутри описания баг-репортов используется формат Markdown.
- Исходный код Issue специально вставлен картинкой, чтобы вы вчитывались и перепечатывали, а не копировали.
- Локация дефекта — место, конкретная строчка кода, из-за чего программа работает неправильно. Чтобы красиво сослаться на нужное место в коде, откройте этот файл на GitHub, нажмите на номер или номера соответствующей строки, удерживая
Shift
, и рядом слева нажмите на троеточие, в выпавшем меню нажмитеCopy permalink
. В буфер обмена скопируется прямая ссылка на эту строку этого коммита. Теперь вы её можете просто вставить в текст Issue, как в шаблоне:
- Для загрузки изображений вы можете воспользоваться кнопкой, находящейся сразу под полем редактирования текста. Также возможна автозагрузка скриншотов прямо из буфера обмена через
Ctrl+V
с автовставкой в место нахождения курсора:
Прикреплена ссылка на публичный github-репозиторий с решением задачи.
- В репозитории размещено содержимое папки проекта IDEA. Корнем репозитория должна быть именно папка проекта — не папка
src
, не папка, внутри которой лежит папка проекта. Т. о. в корне репозитория должна лежать сразу папкаsrc
. - Есть файл
.gitignore
, игнорирующий ненужные файлы и папки, которые должны отсутствовать в репозитории. Если они есть, их нужно оттуда удалить. - В проекте размешён требуемый в условии код.
- На гитхаб-странице вашего репозитория создан баг-репорт на основе GitHub Issue и оформлен в точности по образцу из задания.
- При наличии недочётов, в зависимости от их серьёзности и количества, работа может быть отправлена на доработку или принята. Решение принимается на основе экспертной оценки работы.