Ознакомиться с фреймворком, поработать с сервис-контейнером и архитектурой в целом. Ознакомиться с механизмом инициализации(bootstrap) и обработки реквеста пользователя. Ознакомиться с тестовым окружением в Laravel.
Установка показана в рабочем окружении OS Linux:
git clone [email protected]:BinaryStudioAcademy/bsa-2018-php-5.git
cd project-dir
composer install
cp .env.example .env
php artisan key:generate
Также рекомендуется использовать Homestead для поднятия приложения.
- Реализовать класс
Currency
. - Реализовать класс
CurrencyGenerator
. - Реализовать интерфейс
CurrencyRepositoryInterface
и зарегистрировать в сервис контейнере Laravel. - Реализовать класс
GetCurrenciesCommandHandler
и вернуть список криптовалют. - Реализовать класс
GetPopularCurrenciesCommandHandler
и вернуть список из 3-х наиболее дорогих криптовалют, отсортированных по убыванию цены. - Реализовать класс
GetMostChangedCurrencyCommandHandler
и вернуть валюту, стоимось которой меняется цене чаще других.
Данные можно взять с сайта https://coinmarketcap.com/.
-
Реализовать класс
CurrencyPresenter
. -
Реализовать маршрут
api/currencies
в файлеroutes/api.php
- получить список всех криптовалют в формате json
-
Реализовать маршрут
api/currencies/unstable
в файлеroutes/api.php
- получить наиболее меняющуюся в цене криптовалюту в формате json
-
Реализовать маршрут
/currencies/popular
в файлеroutes/web.php
- получить список из 3-х самых дорогих криптовалют и отрендерить во view
popular_currencies.blade.php
- получить список из 3-х самых дорогих криптовалют и отрендерить во view
Cвои решения можно проверить запустив тесты PHPUnit.
Все тесты:
./vendor/bin/phpunit
Или тест для каждого задания в отдельности
./vendor/bin/phpunit --testsuite task1
Ваше решение необходимо разместить в отдельном репозитории на Github или Bitbucket и прислать ссылку на него.