Проект Казино

Уровень: 1

Профессия Java-программист

Познакомитесь с экосистемой Java, научитесь настраивать рабочее окружение. Подружитесь с Build-tool (maven, gradle), для управления зависимостями, сборки, и линтером SonarLint. После проекта сможете настраивать свои проекты, подключать новые библиотеки, получите базовые навыки отладки.

7
шагов
2-4
недели

Проект - важная часть обучения. Тут закрепляются навыки, полученные в курсах и приобретаются новые. Начните профессию, двигайтесь по шагам и приступайте к проекту, когда будете готовы

Цель

Первый проект нацелен на знакомство с экосистемой Java. Она достаточно сложна по сравнению с языками вроде PHP, Ruby или Python и сравнима по сложности с JavaScript-проектами на Node. Количество понятий, инструментов и их связок настолько большое, что даже у опытных разработчиков иногда голова идет кругом. Чтобы стартануть по всем канонам даже простейший проект придется как следует повозиться. Вот неполный перечень ключевых компонентов любого современного java-приложения:

  • Build-tool (maven, gradle). Управляет зависимостями, выполняет сборку и описывает проект.
  • SonarLint - линтер. Проверяет корректность кода на соответствие стандартам кодирования, а так же признанным в сообществе разработчиков лучшим практикам.

После прохождения проекта вы сможете легко настраивать свои собственные проекты, подключать новые библиотеки, ориентироваться в структуре кода, а также получите базовые навыки отладки. Вы прокачаете себя в использовании пакетов java, работе с исполняемыми файлами и предоставите всем доступ к своему первому пакету в github через сервис jitpack.io.

Описание

В рамках проекта необходимо реализовать набор мини-игр, запускаемых из консоли. Эти игры взяты из казино - "Однорукий бандит", "Пьяница" и "Очко".

Пример вывода из самой первой игры:

У Вас 100$, ставка - 10$
Крутим барабаны! Розыгрыш принёс следующие результаты:
первый барабан - 3, второй - 3, третий - 6
Проигрыш 10$, ваш капитал теперь составляет: 90$
У Вас 90$, ставка - 10$
Крутим барабаны! Розыгрыш принёс следующие результаты:
первый барабан - 4, второй - 3, третий - 2
Проигрыш 10$, ваш капитал теперь составляет: 80$
...
У Вас 20$, ставка - 10$
Крутим барабаны! Розыгрыш принёс следующие результаты:
первый барабан - 6, второй - 0, третий - 3
Проигрыш 10$, ваш капитал теперь составляет: 10$
У Вас 10$, ставка - 10$
Крутим барабаны! Розыгрыш принёс следующие результаты:
первый барабан - 4, второй - 1, третий - 4
Проигрыш 10$, ваш капитал теперь составляет: 0$

Впечатления

Так как закончил проект, хотел бы поделиться обратной связью, наверно не будет лишним :) Интересный проект, из сложных моментов могу выделить первые два шага, в первой курсе по js как-то попроще было инструменты настроить... И пятый шаг, у меня, как мне кажется, по итогу мудрёное решение получилось из-за учёта курсоров, постоянно было ощущение, что по новой начал указатели в с++ изучать...Ну это субъективные ощущения. Очень порадовала отзывчивость ментора, всегда развернутые ответы даже на мои частенько дурацкие вопросы и глупенькие ошибки :) Ещё приятным бонусом выступила развернутость самих шагов (подробное содержание и чёткость формулировок)! В целом ощущение сугубо положительные, с нетерпением жду и готовлюсь к следующим проектам! А так же спасибо за менторство!

Спасибо! Проект оказался интересным и очень полезным с точки зрения приобщения к командной строке, окружению и сопутствующим технологиям (maven, CI и т.п.). Надеюсь второй проект всё же выйдет и удастся пройти и его тоже)

Спасибо большое за проект! Было очень полезно поразбираться с окружением. Ваши комментарии были понятными и исчерпывающими. Касаемо сроков проверки — уже все забылось. Главное, я дошел до конца, с понимаем того, как можно делать лучше.

Вопросы и ответы

Я — новичок. Справлюсь ли я с проектами?

Все зависит от вас! Проекты начинаются с базового уровня, и для старта вам не требуется большого опыта или знаний. Главное — задавать вопросы менторам и решать проблемы сразу. К тому же, вы можете остановиться в любой момент и продолжить с того же уровня в любое время в будущем.

Какое расписание у проекта?

У проектов нет расписаний, все проекты доступны 24 часа в сутки, и вы можете заниматься в удобное для вас время.

Как оплачивается проект?

Один проект стоит $97, и оплата снимается только если вы отправите на проверку первое задание в проекте. Если вы начнете проект, но не выполните первое задание, то деньги списываться не будут. Для участия в проекте нужно иметь активную месячную или годовую подписку, и деньги за проект будут списываться с вашей привязанной карты.

Зачем нужны проекты?

Проект помогает реализовать на практике то, что вы узнали на курсах. Важный момент: написанный вами код навсегда остается в вашем репозитории на GitHub. Фактически это ваша первая работа в портфолио.

Что делает ментор в проектах?

Ментор полностью поддерживает вас и делает все, чтобы вы успешно сдали все проекты. Менторы будут отвечать на все ваши вопросы, помогать решать проблемы, проверять задания и направлять к правильным решениям. Все шаги в проектах проходятся самостоятельно. Последний шаг - проверка ментором, и совместная работа над ошибками.

У меня есть другой вопрос

Пишите нам на [email protected], вам ответит живой человек из команды Хекслета. Или нажмите на иконку со знаком вопроса в правом нижнем углу экрана. Там есть ответы и на другие вопросы и удобная форма для отправки сообщения нам.