Вы разрабатываете публичное REST API. Через год вам нужно выпустить новую версию с изменённой структурой ответа. Какой из следующих подходов к версионированию наиболее подходит для обеспечения обратной совместимости и наименьшего влияния на существующих клиентов?
👍🏼 — Заменить текущие endpoints на новую структуру, чтобы все клиенты автоматически обновились
🔥 — Добавить query-параметр
👾 — Ввести новую версию через URL, например:
⚡️ — Изменить структуру ответа без изменения URL и задокументировать изменения в README
🐸 Библиотека задач по Java
👍🏼 — Заменить текущие endpoints на новую структуру, чтобы все клиенты автоматически обновились
🔥 — Добавить query-параметр
?version=2
ко всем новым вызовам API👾 — Ввести новую версию через URL, например:
/v2/users
параллельно с /v1/users
⚡️ — Изменить структуру ответа без изменения URL и задокументировать изменения в README
Please open Telegram to view this post
VIEW IN TELEGRAM
Что будет результатом кода?
👍🏼 — Hello, world! Hello, world!
🔥 — Hello, world! Hello, world! * С отступом слева
👾 — Ошибка компиляции
⚡️ — RuntimeException
🐸 Библиотека задач по Java
👍🏼 — Hello, world! Hello, world!
🔥 — Hello, world! Hello, world! * С отступом слева
👾 — Ошибка компиляции
⚡️ — RuntimeException
Please open Telegram to view this post
VIEW IN TELEGRAM
Какие из следующих классов являются потокобезопасными?
👍🏼 — HashMap, ArrayList, CopyOnWriteArrayList, ConcurrentHashMap
🔥 — ConcurrentHashMap, CopyOnWriteArrayList
👾 — HashMap, ConcurrentHashMap, CopyOnWriteArrayList
⚡️ — ArrayList, CopyOnWriteArrayList, ConcurrentHashMap
🐸 Библиотека задач по Java
👍🏼 — HashMap, ArrayList, CopyOnWriteArrayList, ConcurrentHashMap
🔥 — ConcurrentHashMap, CopyOnWriteArrayList
👾 — HashMap, ConcurrentHashMap, CopyOnWriteArrayList
⚡️ — ArrayList, CopyOnWriteArrayList, ConcurrentHashMap
Please open Telegram to view this post
VIEW IN TELEGRAM
Ваше мнение по контенту:
🔥 — Всё супер
👍🏼 — Нормально
😁 — Есть предложения по улучшению (в комменты)
Please open Telegram to view this post
VIEW IN TELEGRAM
Что будет результатом кода?
👍🏼 — {apple=10, banana=3, orange=24}
🔥 — {apple=15, banana=3, orange=24, grape=7}
👾 — {apple=15, banana=3, orange=11}
⚡️ — {apple=10, banana=3, orange=24, grape=7}
🐸 Библиотека задач по Java
👍🏼 — {apple=10, banana=3, orange=24}
🔥 — {apple=15, banana=3, orange=24, grape=7}
👾 — {apple=15, banana=3, orange=11}
⚡️ — {apple=10, banana=3, orange=24, grape=7}
Please open Telegram to view this post
VIEW IN TELEGRAM
Что такое Java Memory Model (JMM)?
👍🏼 — Модель, описывающая организацию физической памяти компьютера.
🔥 — Набор правил и спецификаций, определяющих, как потоки в Java взаимодействуют через общую память
👾 — Технология автоматической очистки памяти от неиспользуемых объектов
⚡️ — Средство для профилирования потребления памяти Java-приложением
🐸 Библиотека задач по Java
👍🏼 — Модель, описывающая организацию физической памяти компьютера.
🔥 — Набор правил и спецификаций, определяющих, как потоки в Java взаимодействуют через общую память
👾 — Технология автоматической очистки памяти от неиспользуемых объектов
⚡️ — Средство для профилирования потребления памяти Java-приложением
Please open Telegram to view this post
VIEW IN TELEGRAM
Что будет результатом кода?
👍🏼 — Parent
🔥 — Child
👾 — ParentChild
⚡️ — RuntimeException
🐸 Библиотека задач по Java
👍🏼 — Parent
🔥 — Child
👾 — ParentChild
⚡️ — RuntimeException
Please open Telegram to view this post
VIEW IN TELEGRAM
📦 Главные проблемы распределенных систем (и способы их решения)
Распределенные системы являются основой высоконагруженных веб-приложений, обеспечивая их масштабируемость, отказоустойчивость и высокую производительность. Однако их разработка сопряжена с рядом сложностей, включая сетевые сбои, трудности координации, угрозы безопасности и проблемы масштабирования.
➡️ В этой статье мы рассмотрим четыре ключевых вызова в разработке таких систем и эффективные методы их преодоления.
🐸 Библиотека программиста
Распределенные системы являются основой высоконагруженных веб-приложений, обеспечивая их масштабируемость, отказоустойчивость и высокую производительность. Однако их разработка сопряжена с рядом сложностей, включая сетевые сбои, трудности координации, угрозы безопасности и проблемы масштабирования.
Please open Telegram to view this post
VIEW IN TELEGRAM