React calculator app — разрабатываем классический калькулятор.
- наша работа ограничена 4 часами.
- по ходу реализации задачи крайне приветствуются любые вопросы: о том, как должен работать продукт, о дизайне, о требованиях к технологиям и т.п.
- на каждом этапе (каждой следующей истории) приложение должно представлять из себя нечто законченное и функциональное. То есть развиваем его итеративно, идём от одной истории к следующей, и понимаем, что всё сделать за 4 часа вряд ли успеем;
- главный критерий оценки — качество (его организация, тестирование, стиль, деление на функции, etc) кода и отсутствие ошибок и неотловленных ситуаций;
- можно использовать любые удобные и привычные технологии;
- желательно делать это в виде github-репозитория
Дизайн
https://s3-us-west-2.amazonaws.com/secure.notion-static.com/4f714bfd-e987-403f-9f4b-7a3a5b2b1d33/Untitled
- верхний компонент должен называться Calculator
- на странице он должен быть спозиционирован по центру (и по вертикали и по горизонтали)
- операцию «%» не делаем, кнопку дизейблим
Истории в порядке приоритета:
- У калькулятора есть дисплей, который умеет отображать значения до 12 символов длиной.
- У калькулятора есть кнопки, их можно нажать.
- При нажатии на кнопки цифр, происходит ввод значений на экран.
- Есть кнопка AC, которая полностью очищает состояние калькулятора.
- Можно провести операцию сложения
5.1) Ввод новых цифр учитывает состояние калькулятора
- Можно ввести дробные числа (кнопка «запятая»).
- Дисплей может отображать значения длиной до 40 символов, уменьшая шрифт.
- Можно изменить знак текущего значения (кнопка +-).
- Можно провести операцию вычитания.