Giter VIP home page Giter VIP logo

myfavoriteteam's Introduction

Декомпозиция тестового задания для KODE.

  1. Определить архитектуру и подключить необходимые зависимости в проект(ретрофит, hilt, gson, compose, coil и т.д.) 2 часа - 2 часа
  2. Протестировть работу api через postman (рабоспособнсоть) + разобраться в устройстве, параметрах 1,5 часа - 2 часа часа
  3. Создать каркас архитектуры MVVM (голые классы, мапперы) 1 час - 1 часа
  4. Создать базовые общие инстансы(ретрофит, интерсептор, репозитории и т.д.) + Подключить hilt. Протянуть базовые зависимости по всей архитектуре 3 часа - 2.5 часа
  5. Реализовать методы ретрофита + dto-ошки 1 час - 1 час
  6. протянуть данные до репозитория + маппер + domain model 1 час - 1 час
  7. Базовые стейты для ивентов и состояния

*Поскольку проект будет написан с помощью jetpack compose (!очень высокие риски : ранее использовал) , включая ui, навигацию, отсутствие fragments, оценка завышена(прим. учитывая обозначенный риск) *

Экран "Список сотрудников". UI :

  1. кастомный appBar - 6 часов

  2. bottom sheet - 6 часов

  3. Tab. Поключение + стиллизация - 5 часов

  4. Список + элемент списка - 4 часа

  5. экран ошибки загрузки - 2 часа

  6. Загрузка данных (анимация, кастомный шиммер) - 6 часов

  7. Refresh - 2 часа

  8. Пустой список в соответствие с параметрами: 1.5 часа Логика: 8_1) Фильтрация: 2 часа - 2 часа
    9_1) Выбор активного параметра: 2 часа - 2 часа 10_1) Фильтрация по табу: 2 часа - 2 часа 11_1) Соединение всех фильтраций: 1.5 часа - 2 часа 12_1) Отображение в случае ошибки: 40 минут - 1 час 14_1) Логика по рефрешу данных: 1.5 часа - 1.5 часа Экран "Карточка сотрудника" UI :

  9. Верстка: 2 часа - 2 часа Логика:

  10. Переод на экран с помощью навигации : 2 часа - 6 часов (Причины существенного выхода за эстимацию:не получилось нормально передать parcelable объект с помощью навигации + Классическая сериализация крашилась на передаче * ссылки картинки + LocalDate тоже не сериаизуется) *а может дело сразу в ссылке и было, а я начал искать иные способы передать объект. Выясню это позже

  11. Открыть приложение телефона при нажатии на номер телефона: 1 час - 1 час

Дополнительные задачи, не учтенные заранее(фактически затраченное время):

  1. Логика по регулированию графа навигации : 6 часов

Примечание: Задачи блока UI экрана "Список сотрудников" без фактической оценки - в целом затрачено на UI, переделки, поиск оптимальных решений вышло около 35-ти часов, что на 4 часа больше запланированного (даже с учетом риска) времени.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.