Перейти к основному содержимому

Еженедельник Java, выпуск 245

· 5 мин. чтения

Задача: Сумма двух чисел

Напишите функцию twoSum. Которая получает массив целых чисел nums и целую сумму target, а возвращает индексы двух чисел, сумма которых равна target. Любой набор входных данных имеет ровно одно решение, и вы не можете использовать один и тот же элемент дважды. Ответ можно возвращать в любом порядке...

ANDROMEDA

Вот так…

1. Весна и Ява

>> Bootiful GCP: интеграция с Google Cloud Pub/Sub (4/8) [ spring.io ]

>> Bootiful GCP: конфигурация времени выполнения с помощью Spring Cloud GCP Runtime Config (5/8) [ spring.io ]

По мере продолжения этой серии мы видим простое приложение для обмена сообщениями Spring Integration в Google Cloud и краткий обзор этого удобного API для управления свойствами конфигурации во время выполнения в Google Cloud Platform.

>> Методы по умолчанию в Java 8 и их изменение в дизайне API [ blog.frankel.ch ]

Хорошая заметка рекламирует некоторые преимущества, которые методы по умолчанию в интерфейсах Java имеют по сравнению с вспомогательными классами .

>> Лучший способ клонировать или дублировать сущность с помощью JPA и Hibernate [ vladmihalcea.com ]

Отличный подход к этому общему требованию приложений JPA с использованием конструкторов копирования. Хорошая вещь.

>> IntelliJ IDEA 2018.2 поддерживает Java 11, сенсорную панель MacBook и многое другое [ infoq.com ]

Если вы приверженец IntelliJ, вам стоит попробовать эти новые интересные функции.

>> Советы по спящему режиму: убедитесь, что только 1 из 2 ассоциаций не является нулевым [ мысли -на-java.org ]

Умный способ реализовать пользовательскую аннотацию Bean Validation с помощью библиотеки Hibernate Validator.

Также стоит прочитать:

>> Предварительный просмотр функций языка JDK в действии: переключение выражений [ marxsoftware.blogspot.com ]

>> Время выйти за рамки Oracle JDK [ blog.joda.org ]

>> Spock 1.2 — беспроблемная имитация Spring bean-компонентов в интеграционных тестах [ solidsoft.wordpress.com ]

>> Состояние сериализации Java [ infoq.com ]

>> Реализация потока/разделителя скользящего окна в Java [ 4comprehension.com ]

Вебинары и презентации:

>> Что нового в Spring Boot 2.0, Мадхура Бхаве @ Spring I/O 2018 [ youtube.com ]

>> Асинхронное программирование с сопрограммами Kotlin в Spring от Konrad Kamiński @ Spring I/O 2018 [ youtube.com ]

>> Непрерывное развертывание вашего приложения, автор Marcin Grzejszczak @ Spring I/O 2018 [ youtube.com ]

>> Fun with the Functional Web Framework от Arjen Poutsma @ Spring I/O 2018 [ youtube.com ]

>> Веб-семинар: облачные шаблоны для приложений с интенсивным использованием данных [ youtube.com ]

Время обновления:

>> Spring Session для Apache Geode/Pivotal GemFire 2.0.5.RELEASE и 2.1.0.M1 выпущен! [ весна.ио ]

>> Hibernate ORM 5.1.16.Final выпущен [ in.relation.to ]

2. Технические

>> Распространенные архитектурные изменения, часть 1 [ blog.code-cop.org ]

Эти удобные макросы, скрипты и команды IDE освещают некоторые из множества способов внесения небольших комплексных изменений в большую кодовую базу .

>> Подходит ли вам разработка через тестирование? [ blog.scottlogic.com ]

Если вы возражали против внедрения TDD, эта статья призвана убедить вас переосмыслить свою позицию.

>> Сочетание Object Mother и Fluent Builder для окончательной фабрики тестовых данных [ Reflectoring.io ]

Отличное описание этого шаблона для создания полностью заполненных тестовых объектов, которые затем можно настроить для нужд каждого теста. Удобный инструмент для написания тестов.

>> TomEE: WebSocket и заблокируйте его! [ tomitribe.com ]

Хорошее введение в создание безопасных конечных точек WebSocket с использованием HTTP Basic Auth.

>> Разработка для повышения эффективности маркетинга (часть 2) — масштабирование создания рекламы и управления ею [ medium.com ]

Интересный фрагмент демонстрирует , как Netflix сочетает сборку рекламы с функциональным контролем качества и машинным обучением для создания и доставки персонализированной и локализованной рекламы своей огромной пользовательской базе.

Также стоит прочитать:

>> Методы практического программирования [ horicky.blogspot.com ]

>> Резервные копии проекта OpenShift [ blog.codecentric.de ]

>> TomEE: развертывание толстых банок [ tomitribe.com ]

3. Размышления

>> Трагедия мастерства [ blog.cleancoder.com ]

Дядя Боб размышляет о том, как и почему Agile-движение сместилось от своей первоначальной направленности на продвижение идеалов мастерства в разработке программного обеспечения и более к управлению проектами.

>> Должны ли скрам-мастера зарабатывать больше, чем разработчики программного обеспечения? [ daedtech.com ]

И проницательный обзор роли, которую играют скрам-мастера, и того, что потребность в них говорит об организации .

Также стоит прочитать:

>> Моделирование Монте-Питона: недопонимание Монте-Карло [ dannorth.net ]

>> Смена генерального директора Hazelcast, обязательство продолжать работу с открытым исходным кодом [ infoq.com ]

>> Находить свой ритм такими, какие они есть (НЕ) находить свою обувь [ blog.scottlogic.com ]

>> Исследователи безопасности обнаружили уязвимые устройства Интернета вещей и базы данных MongoDB, раскрывающие корпоративные данные [ blog.shodan.io ]

>> Работайте усерднее [ blog.code-cop.org ]

4. Комиксы

И мои любимые Дилберты недели:

>> Радикальная откровенность [ dilbert.com ]

>> Уолли работает в облаке [ dilbert.com ]

>> Управление по исключениям [ dilbert.com ]

5. Выбор недели

На прошлой неделе я объявил о новом материале, посвященном Spring Boot, который появится в курсе REST With Spring, а также об изменении цены.

Это изменение цены происходит сегодня:

>> ОТДЫХ с весенним курсом