👩🏼🏫 Ещё одно тестовое задание для Python-разработчика 🌚
И не простое, а с вопросиками! 🧠
💬Ниже представлено несколько теоретических вопросов, на которые нет однозначного ответа. С их помощью вы сможете в свободной форме рассказать нам о своём личном опыте в том или ином аспекте и проиллюстрировать рассказ примерами.
🔸Чем, по-вашему, Python превосходит остальные языки программирования? Для каких задач он подходит лучше всего? Для чего он не подходит?
🔸Какие особенности Python вам доставляют больше всего неудобств?
🔸Возможно ли писать программы на Python в функциональном стиле? Насколько он для этого подходит?
🔸Какие инструменты и методы помогают вам экономить время и избегать ошибок при написании кода?
🔸На каких ресурсах вы получаете информацию и новости по используемым технологиям?
Предлагаю по ним поразмышлять в комментах👇🏻
А практическая часть такая 👩🏾💻
Реализуйте web-приложение для простого учёта посещённых (неважно, как, кем и когда) ссылок.
Приложение должно удовлетворять следующим требованиям:
🔹Приложение написано на языке Python версии ~> 3.7.
🔹Приложение предоставляет JSON API по HTTP.
🔹Приложение предоставляет два HTTP-ресурса.
POST /visited_links { "links": [ "https://ya.ru", "https://ya.ru?q=123", "funbox.ru", "https://stackoverflow.com/questions/11828270/how-to-exit-the-vim-editor" ] }
{ "status": "ok" }
GET /visited_domains?from=1545221231&to=1545217638
{ "domains": [ "ya.ru", "funbox.ru", "stackoverflow.com" ], "status": "ok" }
🔹Первый ресурс служит для передачи в сервис массива ссылок в POST-запросе. Временем их посещения считается время получения запроса сервисом.
🔹Второй ресурс служит для получения GET-запросом списка уникальных доменов, посещенных за переданный интервал времени.
🔹Поле status ответа служит для передачи любых возникающих при обработке запроса ошибок.
🔹Для хранения данных сервис должен использовать БД Redis.
🔹Код должен быть покрыт тестами.
🔹Инструкции по запуску должны находиться в файле README.