Вы разрабатываете публичное 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
  👾75👍3⚡2🔥2
  Что будет результатом кода?
👍🏼 — 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
  👍27👾17🔥4
  Какие из следующих классов являются потокобезопасными?
👍🏼 — 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
  🔥116👍2👾1
  Ваше мнение по контенту:
🔥 — Всё супер
👍🏼 — Нормально
😁 — Есть предложения по улучшению (в комменты)
Please open Telegram to view this post
    VIEW IN TELEGRAM
  🔥40👍21🥱7😁6👾1
  Что будет результатом кода?
👍🏼 — {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
  🔥50⚡2👾2👍1
  Что такое Java Memory Model (JMM)?
👍🏼 — Модель, описывающая организацию физической памяти компьютера.
🔥 — Набор правил и спецификаций, определяющих, как потоки в Java взаимодействуют через общую память
👾 — Технология автоматической очистки памяти от неиспользуемых объектов
⚡️ — Средство для профилирования потребления памяти Java-приложением
🐸  Библиотека задач по Java
👍🏼 — Модель, описывающая организацию физической памяти компьютера.
🔥 — Набор правил и спецификаций, определяющих, как потоки в Java взаимодействуют через общую память
👾 — Технология автоматической очистки памяти от неиспользуемых объектов
⚡️ — Средство для профилирования потребления памяти Java-приложением
Please open Telegram to view this post
    VIEW IN TELEGRAM
  🔥54👍5😁1
  Что будет результатом кода?
👍🏼 — Parent
🔥 — Child
👾 — ParentChild
⚡️ — RuntimeException
🐸  Библиотека задач по Java
👍🏼 — Parent
🔥 — Child
👾 — ParentChild
⚡️ — RuntimeException
Please open Telegram to view this post
    VIEW IN TELEGRAM
  🔥127👍4👾2
  Forwarded from Библиотека программиста | программирование, кодинг, разработка
📦 Главные проблемы распределенных систем (и способы их решения)
Распределенные системы являются основой высоконагруженных веб-приложений, обеспечивая их масштабируемость, отказоустойчивость и высокую производительность. Однако их разработка сопряжена с рядом сложностей, включая сетевые сбои, трудности координации, угрозы безопасности и проблемы масштабирования.
➡️  В этой статье мы рассмотрим четыре ключевых вызова в разработке таких систем и эффективные методы их преодоления.
🐸  Библиотека программиста
Распределенные системы являются основой высоконагруженных веб-приложений, обеспечивая их масштабируемость, отказоустойчивость и высокую производительность. Однако их разработка сопряжена с рядом сложностей, включая сетевые сбои, трудности координации, угрозы безопасности и проблемы масштабирования.
Please open Telegram to view this post
    VIEW IN TELEGRAM
  😁4👍1🔥1
  Forwarded from Библиотека джависта | Java, Spring, Maven, Hibernate
💼⌛️ ТОП-5 причин, почему программист не может долго найти работу
Почему некоторые разработчики остаются "между работами" месяцы?
Не всегда дело в нехватке вакансий или «рынок просел». Часто дело в подходе к поиску проекта. Вроде бы есть опыт, стек, даже pet-проекты, но офферов всё нет.
Часто корень проблемы — неумение продать себя правильно. Отказ выполнять тестовые задания, считая их ненужными или обидными. Кроме того, нежелание рассматривать стажировки как стартовую площадку для получения опыта и расширения профессиональных связей также может замедлить процесс трудоустройства. И это далеко не все возможные причины.
🔗  Подробнее в статье
🐸  Библиотека джависта
Почему некоторые разработчики остаются "между работами" месяцы?
Не всегда дело в нехватке вакансий или «рынок просел». Часто дело в подходе к поиску проекта. Вроде бы есть опыт, стек, даже pet-проекты, но офферов всё нет.
Часто корень проблемы — неумение продать себя правильно. Отказ выполнять тестовые задания, считая их ненужными или обидными. Кроме того, нежелание рассматривать стажировки как стартовую площадку для получения опыта и расширения профессиональных связей также может замедлить процесс трудоустройства. И это далеко не все возможные причины.
Please open Telegram to view this post
    VIEW IN TELEGRAM
  👍5⚡1🔥1
  Как работает @Scope("prototype") в Spring?
👍🏼 — Бин создается один раз на каждый HTTP-запрос
🔥 — Каждый вызов getBean() создает новый объект
👾 — Бин создается один раз на все приложение
⚡️ — Используется только для компонентов с @Service
🐸  Библиотека задач по Java
👍🏼 — Бин создается один раз на каждый HTTP-запрос
🔥 — Каждый вызов getBean() создает новый объект
👾 — Бин создается один раз на все приложение
⚡️ — Используется только для компонентов с @Service
Please open Telegram to view this post
    VIEW IN TELEGRAM
  🔥109👍4👾2
  Какие темы в этом месяце использовать для постов чаще:
🔥 — Java core
👍🏼 — Spring
👾 — Паттерны
😁 — Напишу в комменты свой вариант
Please open Telegram to view this post
    VIEW IN TELEGRAM
  👍57🔥20👾16
  Что выведет код для записей, где поле age равно NULL?
  Anonymous Quiz
    17%
    SQLException
      
    34%
    NullPointerException
      
    19%
    0
      
    21%
    null
      
    9%
    Такие записи будут исключены из выборки
      
    👍10👾2🔥1👏1
  Какой механизм в Spring позволяет использовать разные конфигурации для различных окружений, не меняя основной код приложения?
  Anonymous Quiz
    63%
    Spring Profiles
      
    10%
    Spring AOP
      
    20%
    Spring Boot AutoConfiguration
      
    1%
    Spring Data Repositories
      
    5%
    Spring Batch Configuration
      
    👍6🤔4🔥1
  Forwarded from Библиотека джависта | Java, Spring, Maven, Hibernate
Уверены, что знаете Java на отлично? Проверьте себя на этих 10 каверзных вопросах, которые могут встретиться на собеседовании или просто сломать код.
Пройдите тест и узнайте, насколько знаете тонкости языка.
🔗 Пройти тест
Please open Telegram to view this post
    VIEW IN TELEGRAM
  🔥6👍3👏1🌚1
  Что произойдет, если в HashMap добавить два объекта с ключами, равными по hashCode но разными по equals?
  Anonymous Quiz
    5%
    Второй объект не добавится
      
    21%
    Второе значение перезапишет первое
      
    5%
    IllegalArgumentException
      
    58%
    Оба объекта сохранятся в один бакет
      
    11%
    Оба объекта сохранятся в разные бакеты
      
    👍11🔥2👏2
  Forwarded from Библиотека шарписта | C#, F#, .NET, ASP.NET
🤔📝 Псевдокод: когда преподы не шарят, а ты в тупике
Псевдокод может быть настоящим головняком, особенно если требования к нему кажутся непонятными или не совпадают с тем, что вы видите в реальной практике программирования.
Узнайте, как сделать псевдокод полезным инструментом, а не дополнительной нагрузкой.
➡️  Читать статью
🐸 Библиотека шарписта
Псевдокод может быть настоящим головняком, особенно если требования к нему кажутся непонятными или не совпадают с тем, что вы видите в реальной практике программирования.
Узнайте, как сделать псевдокод полезным инструментом, а не дополнительной нагрузкой.
Please open Telegram to view this post
    VIEW IN TELEGRAM
  😁4👍2🔥1💯1
  Что будет результатом запуска кода?
  Anonymous Quiz
    19%
    Executing MyService
      
    63%
    NoUniqueBeanDefenitionException
      
    4%
    MyService
      
    6%
    BeanNotFoundException
      
    7%
    Ошибка компиляции
      
    🔥6👍2👏1
  Ежемесячный опрос по грейдам. Проверим, помог ли контент кому-то повысить уровень.
Ваш грейд:
🔥 — Senior
👍🏼 — Middle
❤️ — Junior
😁 — Ещё учусь
Please open Telegram to view this post
    VIEW IN TELEGRAM
  😁66❤28👍22🔥20
  